[c++] execl() / fermer un processus
Flow31-
Messages postés
84
Date d'inscription
Statut
Membre
Dernière intervention
-
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous !
j'ai deux trois questions de c++ :
j'utilise la fonction execl() pour ouvrir un programme : pas de problème, sauf qu'il me ferme l'ancien.
Comment faire pour que execl() ouvre le programme dans une autre fenêtre pour que celui-ci continue ?
Et comment faire pour fermer ce programme ? car là, il devra aller dans les processus le chercher, non?
Han je galère depuis ce weekend :/
Merci !
j'ai deux trois questions de c++ :
j'utilise la fonction execl() pour ouvrir un programme : pas de problème, sauf qu'il me ferme l'ancien.
Comment faire pour que execl() ouvre le programme dans une autre fenêtre pour que celui-ci continue ?
Et comment faire pour fermer ce programme ? car là, il devra aller dans les processus le chercher, non?
Han je galère depuis ce weekend :/
Merci !
A voir également:
- [c++] execl() / fermer un processus
- Comment fermer un compte paypal - Guide
- Comment fermer un compte gmail - Guide
- Comment fermer un programme qui ne répond pas - Guide
- Fermer compte outlook - Guide
- Rouvrir un onglet fermé - Guide
7 réponses
Les fonctions de type 'exec' (qui ne sont pas ISO) ont pour but de remplacer le programme existant par un autre; donc si l'on veut que le programme existant se poursuive il faut choisir une autre fonction.
Dès lors, il y a deux solutions:
- 'system' qui permet de lancer un autre programme, mais on attend alors la fin de ce programme pour poursuivre le programme principal,
- 'fork' qui permet de lancer un autre processus dans lequel on pourra alors lancer un autre programme.
Je ne parle pas des 'threads' qui ne sont pas une bonne solution à ce problème.
Bonne continuation.
Dès lors, il y a deux solutions:
- 'system' qui permet de lancer un autre programme, mais on attend alors la fin de ce programme pour poursuivre le programme principal,
- 'fork' qui permet de lancer un autre processus dans lequel on pourra alors lancer un autre programme.
Je ne parle pas des 'threads' qui ne sont pas une bonne solution à ce problème.
Bonne continuation.
je suis tombé sur cette source :
et ... fork was not declared in this scope
J'utilise Codeblocks et je cherche de l'aide pour la déclarer...Merci
#include <sys/types.h> switch(fork()) { case -1 : perror("Probleme fork); exit(1); case 0: //tu es dans le fils fais ce que tu veux execl ("C:\\Documents and Settings\\florian\\Mes documents\\lossbot\\bin\\Debug\\intro.exe",0); exit(1); defaut : }
et ... fork was not declared in this scope
J'utilise Codeblocks et je cherche de l'aide pour la déclarer...Merci
Salut.
sous windows, utilise spawn à la place de exec. Regarde les doc sur MSDN.
Sous Linux fork() doit exister, il faut trouver où.
Sous Mac, HP, SUN, BSD etc. Je ne sais pas.
sous windows, utilise spawn à la place de exec. Regarde les doc sur MSDN.
Sous Linux fork() doit exister, il faut trouver où.
Sous Mac, HP, SUN, BSD etc. Je ne sais pas.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ah oui, sous Windows, 'fork' n'existe pas.
Toutefois dans l'API tu dois avoir ces deux fonctions: CreateProcess et CreateThread.
Je n'en sais pas plus.
Toutefois dans l'API tu dois avoir ces deux fonctions: CreateProcess et CreateThread.
Je n'en sais pas plus.