Bonjour,
Je poste ici après avoir un peu erré sur le net à la recherche d'une solution. En espérant que vous m'aidiez à trouver une approche pour gérer ce problème.
Je reprends du code existant ou un fichier parent.pc exécute le code suivant :
Le problème étant que lorsque le programme fils renvoie une erreur, logiquement celle-ci est étouffée puisque ce programme tourne en arrière plan. J'ai donc besoin d'avoir le retour d'erreur de ce programme tout en le laissant en arrière plan.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 for (iCpt = 0 ; iCpt < iNbSousFic ; iCpt++) { ... sprintf(commande,"fils.exe %s &",pchNomSousRepTrav); retourErreur = system(commande); ... }
Je me suis renseigné sur la possibilité de récupérer le PID de ce programme via la commande
Mais cette valeur reste à 0. De plus, je n'ai aucune certitude sur la possibilité de retrouver le code d'erreur du programme fils grâce à ce PID.
Code : Sélectionner tout - Visualiser dans une fenêtre à part retourPID = system("$!");
Est-ce que j'ai bien abordé le sujet ? Est-ce que vous avez une solution (magique) à me proposer ?
Merci d'avance.
PS : Etant donné que ce sont des fichiers pro*c mais que la syntaxe est du C, j'ai décidé de poster ce topic ici.
Partager