[UDF] interProcess communication (.ini)

Partagez des fonctions et des UDF AutoIt.
Règles du forum
.
Répondre
Avatar du membre
matwachich
Membre émérite
Membre émérite
Messages : 986
Enregistré le : lun. 19 oct. 2009 04:04
Localisation : Algérie
Status : Hors ligne

[UDF] interProcess communication (.ini)

#1

Message par matwachich »

Un petit udf tout simple pour faire communiquer simplement deux exécutables autoit par le biais d'un fichier .ini, l'udf se charge de gérer le tout! (création du fichier, lecture/écriture des variables...)

L'avantage, (je pense!) c'est que un programme principale peut communiquer avec plusieurs autres sans qu'ils partagent tous forcément le même fichier .ini, en effet, la fonction _startup() retourne un Handle (ce n'est au fait que le chemin d'un fichier .ini!) utilisable pour lancer un autre programme, et donc on peut faire plusieur fois _startup() et lancer chaque autre programme avec un handle différent

Un exemple:

Code : Tout sélectionner

$handle1 = _startup()
$handle2 = _startup()

_launchClient("Exécutable1.exe", $handle1)
_launchClient("exécutable2.exe", $handle2)
La liste des fonctions:

Code : Tout sélectionner

Func _startup() ; ### Lancer dans le programme principal

Func _clientStartup() ; ### Lancer dans le programme qui sera lancer par le programme principal

Func _launchClient($handle, $path) ; ### Le programme principal doit lancer le second avec cette fonction

Func _setGlobalVar($handle, $name, $data) ; ### Créer un variable

Func _getGlobalVar($handle, $name) ; ### Lis t une variable

Func _enumVars($handle) ; ### Retourne un Array 2D avec les variables et leurs valeurs

Func _variableExists($handle, $name) ; ### Test une variable si elle existe

Func _deleteGlobalVar($handle, $var) ; ### Suprimme une variable

Func _shutdown($handle) ; ### Pour fermer un handle (à utiliser avec le programme PRINCIPAL, quand on sais que le

Func _shutdownAll() ; ### Pour fermer tous les handles (à utiliser aussi avec le programme principal quand il se ferme)
 
Le code est super simple, c'est pour cela que je ne commente pas chaque fonction! (et aussi parce-que j'ai des exams!)
InterProcess.zip
(2.5 Kio) Téléchargé 311 fois
Sortons VW du coté obscure! - La curiosité est un vilain défaut! Cliquez ici
Répondre