Prozessproblem...
-
lpProcessInformation
[out] Pointer to a PROCESS_INFORMATION structure that receives identification information about the new process.
Handles in PROCESS_INFORMATION must be closed with CloseHandle when they are no longer needed.Die Message-Loop ist so wie (zu Beginn) gepostet irgendwie sinnlos, denn wenn keine Messages da sind liefert PeekMessage gleich zu Beginn 0 zurück und die while-Schleife wird verlassen. Versuch es mal so (ungetestet):
MSG message; while(WaitForSingleObject(pi.hProcess, 10) == WAIT_TIMEOUT) // ich denke, dass der Wert 0 nur unnötig die CPU-Last erhöht - evtl. sogar noch größer als 10 wählen { if(PeekMessage(&message, NULL, 0, 0, PM_REMOVE)) { TranslateMessage(&message); DispatchMessage(&message); } } // nochmals checken, ob der Prozess auch wirklich beendet wurde (es kann ja auch ein Fehler gegeben haben) if(WaitForSingleObject(pi.hProcess, 0) == WAIT_OBJECT_0) { DWORD dwCode; GetExitCodeProcess(pi.hProcess,&dwCode); sprintf(text, "%d", dwCode); }
-
@flenders
Hey super, es funktioniert!!!!
vielen vielen vielen vielen vielen vielen vielen vielen vielen vielen vielen Dank!Grüsse,
~cp code_pilot