Obtient le statut de terminaison du processus spécifié
#include <WinAPIProc.au3>
_WinAPI_GetExitCodeProcess ( $hProcess )
$hProcess | Handle du processus. |
Succès: | Retourne le statut de terminaison du processus. Si le processus n'est pas terminé et que la fonction réussit, le statut retourné est STILL_ACTIVE (259). |
Échec: | Retourne 0, appelez _WinAPI_GetLastError() pour obtenir des informations supplémentaires sur l'erreur. |
Consultez GetExitCodeProcess dans la librairie MSDN.
#include <ProcessConstants.au3> #include <WinAPIHObj.au3> #include <WinAPIProc.au3> #include <WinAPISys.au3> ; _WinAPI_CreateProcess() sera la meilleure solution Local $iPID = Run('cmd.exe /k') If Not $iPID Then Exit EndIf ; Remarquez l'ouvertue immédiate du processus Local $hProcess If Number(_WinAPI_GetVersion()) >= 6.0 Then $hProcess = _WinAPI_OpenProcess($PROCESS_QUERY_LIMITED_INFORMATION, 0, $iPID) Else $hProcess = _WinAPI_OpenProcess($PROCESS_QUERY_INFORMATION, 0, $iPID) EndIf If Not $hProcess Then Exit EndIf ; Attend que le processus existe, essayez de saisir "exit 6" While ProcessExists($iPID) Sleep(100) WEnd ConsoleWrite('Exit code: '& _WinAPI_GetExitCodeProcess($hProcess) & @CRLF) _WinAPI_CloseHandle($hProcess)