Page 1 sur 1

[R] Envoie de message entre programmes pour synchronisation

Posté : mar. 10 août 2021 16:03
par Exter76
Bonjour à tous !
J'aurai une petite question, je travail sur un petit projet et mon idée serai comme son nom l'indique,
de pouvoir envoyer différent message entre les programmes pour que ceux-ci puisse se synchroniser.
Je vais vous donner un petit exemple pour vous donner une idée plus clair:
Programme 1 et 2 écrivent chacun un mail, Statuts dans leur l'edit: "Mail en cours"
une fois le mail envoyer statuts: "Envoyer"
Programme 3 et 4 une fois que le statuts des 1 et 2 est écris: "Envoyer"
ils vont vérifier l'adresse mail que je leur ai fournis, attendre la réception du mail pour y répondre et transféré un message et au programmes 4 et 5 et ainsi de suite.

Je me doute qu'il y a beaucoup plus simple a faire,
mais se qui m'intéresse dans ce cas c'est plutôt la communication entre plusieurs programme via une seul interface.

J'ai trouver différent script qui m'aiderait a faire cela, mais il interagissent entre différents GUI alors que j'aimerai pouvoir n'en utiliser qu'un seul.
Exemple de se que j'ai pu trouver:
► Afficher le texte
Et voilà le genre d'interface que je souhaite utiliser:
► Afficher le texte
Les Combo de mon interface me serviront a sélectionner quel programme je souhaite utiliser et le bouton Start pour l'exécuter, jusque là tout va bien.
Les différents Edit me servirons à indiquer le statuts du programme en cours:
"En cours" - "A l'arrêt" - "Exécute l'étape 1" - "Exécute l'étape 2" ect...

Et là est mon premier soucis, dois-je utiliser un Edit sachant que les programmes devront principalement lire les derniers messages et j'ai peur que cela ne risque de créer des confusion, a moins qu'il y a un moyen d'avoir une lecture uniquement du dernier message ?
Ou alors je vais devoir utiliser autre chose ?

Et là deuxième soucis que je rencontre,
Comment est-ce que je pourrais indiquer au programme 2 ou 3 de lire le dernier message de l'edit du programme 1 ?
Se serait principalement attendre le "Envoyer" du programme 1 pour exécuter son action.

C'est uniquement pour "la gloire", je me répète mais je sais qu'il y a plus simple, c'est justement le fait de pouvoir faire une synchronisation des programmes via l'interface qui m'intéresse :lol:

Dans l'attente de votre aide, Merci d'avance :)

Re: Envoie de message entre programmes pour synchronisation

Posté : mer. 11 août 2021 08:47
par jl56
Bonjour à tous,

Pour synchroniser 2 programmes j'utilise un fichier ini ecrit/lu par les 2 programmes c'est très réactif
dans votre exemple 1 er programme écrit "mail envoyé" , le 1 émm programme le lit via une boucle puis écrit "mail traité" ou supprime la section ou clé ..
il y a beaucoup de possibilité

Cordialement,

JL56

Re: Envoie de message entre programmes pour synchronisation

Posté : mer. 11 août 2021 10:27
par jchd
Faire une recherche pour "IPC" (Inter-Program Communication) sur le forum US. On peut utiliser de la mémoire partagée sous mutex, du passage de messages, du mailslot, des contrôles cachés, etc. Tout ça est bien plus solide que d'utiliser un fichier qui pose des problème de concurrence d'accès.

Re: Envoie de message entre programmes pour synchronisation

Posté : mer. 11 août 2021 23:20
par Exter76
Bonsoir !
Merci pour vos réponse, en effet j'ai déjà vu ça plusieurs vois l'utilisation des fichier .ini mais j'aimerai avoir un petit visuel de se qui se passe entre les programmes, après rien ne m'empêche de combiner les deux.
J'irai faire un petit tour sur le forum US, je n'avais pas le nom exacte de cette manœuvre, merci encore.
Dans l'ideal j'aimerai que ce soit rapide comme communication donc je mènerai mon enquête, si vous avez plus de détail a me confier n'hésitez pas. :)

Re: Envoie de message entre programmes pour synchronisation

Posté : jeu. 12 août 2021 14:26
par TommyDDR
L'utilisation d'un fichier est à prohiber pour des raisons d'accès concurrent.
Si vos programmes veulent accéder tous les 2 au fichier, vous aurez soit un problème d'écriture, soit un écrasement de l'une des deux actions.
Je vous conseille aussi de regarder ce que jchd vous a conseillé.

Re: Envoie de message entre programmes pour synchronisation

Posté : sam. 21 août 2021 00:25
par Nine
Voir mon UDF très simple d'utilisation :
https://www.autoitscript.com/forum/topi ... messaging/