Текущий архив: 2005.07.18;
Скачать: CL | DM;
ВнизПроверка SetWindowsHookEx Найти похожие ветки
← →
alex-drob (2005-05-23 22:28) [0]Есть процедура в dll
procedure keyLock(val:boolean); stdcall; export;
begin
if val then
idKeyHook:=SetWindowsHookEx(WH_KEYBOARD,@keyHookFunc,hInstance,0)
else
UnhookWindowsHookEx(idKeyHook);
end;
Как зделать проверку чтобы нельзя было вызвать два раза подряд keyLock(true)
← →
Eraser © (2005-05-24 00:26) [1]alex-drob (23.05.05 22:28)
if idKeyHook = 0 then
exit;
← →
Eraser © (2005-05-24 00:27) [2]Sorry, замени = на <> !!!
← →
alex-drob (2005-05-24 00:37) [3]Так не работает.
после keyLock(true) клавиатура блокируется
после keyLock(false) разблокируется
а если ещё раз вызвать keyLock(true) то клавиатура остаётся разблокированной.
← →
alex-drob (2005-05-24 00:44) [4]После
UnhookWindowsHookEx(idKeyHook);
idKeyHook не становиться равное 0.
← →
False_Delirium © (2005-05-24 01:01) [5]if val then
if idKeyHook = 0 then
idKeyHook := SetWindowsHookEx(WH_KEYBOARD,@keyHookFunc,hInstance,0)
else
if UnhookWindowsHookEx(idKeyHook) <> 0 then
idKeyHook := 0
else
// ошибка, поругаться
UnhookWindowsHookEx(idKeyHook);
? :)
← →
alex-drob (2005-05-24 01:16) [6]Спасибо помогло!!!
толькоUnhookWindowsHookEx(idKeyHook) <> 0
ошибка
а хоть такUnhookWindowsHookEx(idKeyHook) <> true
хоть такUnhookWindowsHookEx(idKeyHook) = true
работает!
Страницы: 1 вся ветка
Текущий архив: 2005.07.18;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.036 c