Имеется хук на клавиатуру, заданный так:
{$J+}
const
Hook11: HHook = 0;
WH_KEYBOARD_LLL = 13;
{$J-}
function HookProct2(nCode: Integer; MsgID: WParam; Data: LParam): LResult; stdcall;
begin
Result:=-1;
end;
procedure DisableKBtt; stdcall;
begin
if Hook11 = 0 then Hook11:=SetWindowsHookEx(WH_KEYBOARD_LLL,@HookProct2,HInstance,0);
end;
procedure EnableKBtt; stdcall;
begin
UnhookWindowsHookEx(Hook11);
Hook11:=0;
end;
Требуется пропускать лишь цифры. Прочитал немного про этот метод - так понял, что через HookProct2 и проходят все нажатия-сообщения, и у меня эта процедура присваивает всем нажатиям -1, и клавиатура считай отключается. Чтобы пропускать лишь цифры, нужно как-то различать сообщения. Я смотрел входные параметры при разных нажатиях - nCode всегда=0, WParam=256, Data - каждый раз другое число, закономерностей я не заметил, на ASCII-коды не похоже. Или, может, всё это дело нужно в библиотеку запихнуть?