Obtient l'identifiant du thread qui a créé la fenêtre spécifiée
#include <WinAPISysWin.au3>
_WinAPI_GetWindowThreadProcessId ( $hWnd, ByRef $iPID )
$hWnd | Handle de la fenêtre |
$iPID | Variable qui contiendra l'identifiant du processus (PID) du thread. |
Consultez GetWindowThreadProcessId dans la librairie MSDN.
#include <MsgBoxConstants.au3> #include <WinAPISysWin.au3> Example() Func Example() ; Exécute le Bloc-notes Run("notepad.exe") ; Attend 10 secondes pour que la fenêtre du bloc-notes apparaisse. WinWait("[CLASS:Notepad]", "", 10) ; Récupére le handle de la fenêtre du Bloc-notes à l'aide du nom de classe du Bloc-notes. Local $hWnd = WinGetHandle("[CLASS:Notepad]") If @error Then MsgBox($MB_SYSTEMMODAL, "", "Une erreur est apparue en essayant d'obtenir le handle de fenêtre de Notepad.") Exit EndIf ; Récupère l'identifiant du thread et passe une variable au paramètre $iPID pour stocker le PID. Local $iPID = 0 Local $iThread = _WinAPI_GetWindowThreadProcessId($hWnd, $iPID) ; Afficher le thread de processus et le PID de la fenêtre du Bloc-notes. MsgBox($MB_SYSTEMMODAL, '', "Process thread: " & $iThread & @CRLF & _ "Process ID (PID): " & $iPID) ; Ferme la fenêtre du Bloc-notes en utilisant le descripteur retourné par WinGetHandle. WinClose($hWnd) EndFunc ;==>Example