Функция DllCallbackFree

         Описание функции


DllCallbackFree

Освобождает дескриптор, ранее созданный функцией DllCallbackRegister.

DllCallbackFree ( handle )

Параметры

handle Дескриптор DllCallback, возвращаемый предыдущим вызовом функции DllCallbackRegister().

Примечания

По окончании, AutoIt автоматически закрывает все открытые дескрипторы, но вызов DllCallbackFree() всё же рекомендуется.

См. также

DllCall, DllCallbackGetPtr, DllCallbackRegister

Пример

; Создаёт функцию обратного вызова
$handle = DllCallbackRegister("_EnumWindowsProc", "int", "hwnd;lparam")

; Вызывает EnumWindows
DllCall("user32.dll", "int", "EnumWindows", "ptr", DllCallbackGetPtr($handle), "lparam", 10)

; Удаляет функцию обратного вызова
DllCallbackFree($handle)

; Процедура функции обратного вызова
Func _EnumWindowsProc($hWnd, $lParam)
    If WinGetTitle($hWnd) <> "" And BitAND(WinGetState($hWnd), 2) Then
        Local $res = MsgBox(1, WinGetTitle($hWnd), "$hWnd=" & $hWnd & @CRLF & "lParam=" & $lParam & @CRLF & "$hWnd(type)=" & VarGetType($hWnd))
        If $res = 2 Then Return 0 ; Нажатие кнопки "Отмена", возвращает 0, чтобы остановить перечисление
    EndIf
    Return 1 ; Возвращает 1, чтобы продолжить перечисление
EndFunc