Bonjour, je souhaiterais lancer un programme en c � partir de mon programme et je veux qu'ils puissent communiquer. Une seule question comment faire?
Merci pour votre aide.
Bonjour, je souhaiterais lancer un programme en c � partir de mon programme et je veux qu'ils puissent communiquer. Une seule question comment faire?
Merci pour votre aide.
Salut,
Il y a bien des fa�ons, selon :
- La plateforme sur laquelle tu codes (Windows, Linux,. ...)
- Si tu as les sources du programme que tu veux lancer
- La quantit� de donn�e � transmettre de l'un � l'autre
Maintenant tu peux, par exemple, lancer le premier programme, effectu� un fork + execv pour le deuxi�me programme ou utiliser la commande system (nettement moins bien).
Pour communiquer tu peux par exemple utiliser un fichier, les socket en local, ou encore les tubes, files de message, etc. Voir communication inter-processus.
Tout �a n�cessite peut-�tre des notions que tu n'as pas encore, alors avant d'aller plus loin, il nous faudrait les r�ponses aux questions ci-dessus![]()
Merci d'avoir r�pondu,
Je programme sous linux.
Oui j'ai les sources.
J'ai un programme qui fait des mesures, une fois les mesures effectu�es, je veux qu'il ex�cute un second programme, qui se mettra en �coute, qui lui envoi un signal pour lui dire qu'il a �crit dans un pipe nomm�. Et ce second programme, d�s qu'il re�oit un signal il lit le contenu du pipe et envoie le contenu en gprs.
Au niveau des connaissance sa va je me d�brouille, c'est juste la meilleure m�thode qui me manque.
En fait si tu utilises les pipe nomm�s, il n'y a pas besoin de signaux, tu peux juste attendre en lecture que quelque chose arrive, un peu comme les socket !
Et si tu as d'autres choses � faire que d'attendre b�tement, et bien tu peux utiliser un threadOu alors utiliser un select.
Par contre, ce n'est sp�cialement utile de faire deux programmes distincts (sauf si tu as des raisons particuli�res de faire �a). Tu pourrais faire deux threads, et vu que les threads peuvent partager de la m�moire, �a te simplifierais probablement la vie. Et �a serait surement plus rapide.
Partager