executer programme
Le
sophie.cape
Bonjour, je programme en C++ et je voudrais savoit s'il existe une fonction
permettant d'executer un executable donné s'il existe en blocant le
programmme jusqu'a la fin de l'execution du programme executé.
Je pourais utiliser sytem("executable.exe") mais cela present
k'inconvenient d'affichier une fenetre de console noire.
Merci de me répondre.
permettant d'executer un executable donné s'il existe en blocant le
programmme jusqu'a la fin de l'execution du programme executé.
Je pourais utiliser sytem("executable.exe") mais cela present
k'inconvenient d'affichier une fenetre de console noire.
Merci de me répondre.

Poser une question


ShellExecuteEx() ou CreateProcess() + WaitForSingleObject()
ex =>
SHELLEXECUTEINFO sei;
ZeroMemory(&sei, sizeof(sei));
sei.cbSize = sizeof(sei);
sei.lpParameters = NULL;
sei.nShow = SW_SHOWNORMAL;
sei.lpFile = "Notepad";
sei.fMask = SEE_MASK_NOCLOSEPROCESS;
ShellExecuteEx(&sei);
if (sei.hProcess)
{
WaitForSingleObject(sei.hProcess, INFINITE );
MessageBox(NULL, "Terminé !", "Info", MB_OK | MB_ICONINFORMATION);
}
(dans un thread si on ne veut pas bloquer le prog appelant...)
Merci mais ton exemple affiche une erreur s'il ne trouve pas le programme.
or je voudrais que mon programe execute un autre programme SEULEMENT si il
existe.
Dois-je changer quelque-chose da,s ton code?
Si on met SEE_MASK_FLAG_NO_UI, il n'y aura pas de Dlg d'erreur s'il
n'est pas trouvé.
C'est exactement se que je cherchait. Merci.