Bonjour,
Ci-joint un extrait de mon code qui comprend la fonction "CreateProcess". Le rôle de cette fonction est de lancer des scripts python. Cette fonction était suivie de la fonction WaitForSingleObject(pi.hProcess,60000). Mon prédécesseur l'a mise en commentaire. A la suite de cette fonction WaitForSingleObject qui n'existe plus, j'ai un CloseHandle(pi.hProcess) et CloseHandle(pi.hThread). Parfois, j'ai des scripts qui ne sont pas lancés, je ne sais pas s'il y a un lien avec cette mise en commentaire. Les questions que je me pose sont : Le code joint est juste?? Est-il important, dans mon cas, de faire un WaitForSigleObject juste après le CreateProcess?? Si oui pourquoi? Sinon pourquoi?
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 STARTUPINFO si; PROCESS_INFORMATION pi; ZeroMemory(&si,sizeof(STARTUPINFO)); si.cb = sizeof(STARTUPINFO); BOOL bResult = CreateProcess( NULL,//szProcessName, (LPTSTR)(LPCTSTR)csCmdLine, NULL, NULL, FALSE, 0, NULL, (LPCTSTR)pta->pAgent->m_csServicePath, &si, &pi); if (!bResult) { SnmpUtilVarBindListFree(&pta->vbList); delete pta;//%RA% le 28/08/08 ID 66 correction fuite mémoire SMIP return -1; } //Pourquoi attendre indéfiniment pour rien ? /*WaitForSingleObject(pi.hProcess, INFINITE);*/ CloseHandle(pi.hProcess); CloseHandle(pi.hThread);
Partager