Bonjour à tous.
Je viens de passez ma matiné à essayer de résoudre un problème casse pied, sans y parvenir, dans je fais appel à votre savoir infini
.
Voilà, j'ai développé une petite application purement console en c++ qui fait
sont boulot. Je la lance depuis la ligne de commande, ça marche... Et
quand je fais Ctrl+C, à l'aide d'un "signal(SIGTERM, fonction);" dans le code, je ferme proprement le programme. Aucun soucis jusque là. Ca fonctionne les /* censuré */ dans le nez.
Maintenant, j'ai fais une seconde
application interface qui doit controler le lancement et l'arrêt de la première.
Dans je lance le processus... Je controle les I/O, aucun soucis toujours...
Et maintenant, je veux arrêter proprement ce
process.... Et bien là, pas moyen. Les fonctions
TerminateApplication envoient des SIGKILL qui me
la tue salement, et je n'arrive pas à déclencher l'appel du signal de ma sous application.
Je n'ai aucun soucis du genre sous Linux... Mais je m'en sors pas sous windows. Pourtant, il y a forcement moyen, vu que le Ctrl+C dans la ligne de commande fonctionne bien. Alors, qu'envoie-t-il ? Quel fonction utiliser ?
Merci beaucoup pour votre aide.
Snark.
Partager