Libère un handle créé précédemment avec DllCallbackRegister.
DllCallbackFree ( handle )
handle | Le handle DLLCallback, tel qu'il est retourné par un appel précédent à DllCallbackRegister(). |
DllCall, DllCallbackGetPtr, DllCallbackRegister
#include <MsgBoxConstants.au3> ; Crée une fonction de rappel. Local $hHandle = DllCallbackRegister("_EnumWindowsProc", "int", "hwnd;lparam") ; Appelle EnumWindows. DllCall("user32.dll", "int", "EnumWindows", "ptr", DllCallbackGetPtr($hHandle), "lparam", 10) ; Supprime la fonction de rappel. DllCallbackFree($hHandle) ; Procédure de rappel Func _EnumWindowsProc($hWnd, $lParam) ; Si le titre est vide ou si la fenêtre n'est pas visible, alors continue l'énumération. If WinGetTitle($hWnd) = "" Or BitAND(WinGetState($hWnd), 2) = 0 Then Return 1 Local $iRes = MsgBox(BitOR($MB_SYSTEMMODAL, $MB_OKCANCEL), _ WinGetTitle($hWnd), "$hWnd=" & $hWnd & @CRLF & _ "$lParam=" & $lParam & @CRLF & _ "$hWnd(type)=" & VarGetType($hWnd)) If $iRes <> $IDOK Then Return 0 ; bouton Cancel/Close cliqué, retourne 0 pour arrêter l'énumération. Return 1 ;Retour 1 pour continuer l'énumération. EndFunc ;==>_EnumWindowsProc