Funktionsreferenz

DllCallbackGetPtr

Gibt einen Zeiger auf eine Callback Funktion zurück die an Win32 API übergeben werden kann.

DllCallbackGetPtr ( handle )

 

Parameter

handle Ein DllCallback Handle, welches von DllCallbackRegister zurückgegeben wurde.

 

Rückgabewert

Erfolg: Der Zeiger auf die Callback Funktion.
Fehler: 0.

 

Bemerkungen

DllCallbackGetPtr ist zu verwenden, um die Adresse einer Callback Funktion an Win32 API zu übergeben, wenn DllCall verwendet wird.

 

Verwandte Funktionen

DllCall, DllCallBackRegister, DllCallbackFree

 

Beispiel


; Erstellt Callback Funktion
$handle = DLLCallbackRegister ("_EnumWindowsProc", "int", "hwnd;lparam")     

; EnumWindows aufrufen
DllCall("user32.dll", "int", "EnumWindows", "ptr", DllCallbackGetPtr($handle), "lparam", 10)

; Löscht Callback-Funktion
DllCallbackFree($handle)

; Callback Verfahren
Func _EnumWindowsProc($hWnd, $lParam)
    If WinGetTitle($hWnd) <> "" And BitAnd(WinGetState($hWnd), 2) Then
        $res = MsgBox(1, WinGetTitle($hWnd), "$hWnd=" & $hWnd & @CRLF & "lParam=" & $lParam & @CRLF & "$hWnd(type)=" & VarGetType($hWnd))
        If $res = 2 Then Return 0   ; Wenn Abbrechen geklickt, Rückgabe 0 zum Stoppen der Aufzählung
    EndIf
    Return 1    ; Rückgabe 1 um die Aufzählung fortzusetzten
EndFunc