Показать сообщение отдельно
  #1  
Старый 25.05.2010, 14:20
ilsen_diaz ilsen_diaz вне форума
Прохожий
 
Регистрация: 18.05.2010
Сообщения: 6
Репутация: 10
По умолчанию Помогите с клавой

Вот такая задача - нужно отключить/включить клавиатуру. Как это сделать и какие модули использовать?
Есть такой пример:
Код:
// используемые переменные
var
Dummy     : ildKbHook : HHook=0;

impementation

function KbHook( code: Integer; wparam: Word; lparam: LongInt ): LongInt; stdcall;
begin
if code<0 then Result:=CallNextHookEx( oldKbHook, code, wparam, lparam )
else Result:=1;
end;

// включение клавы
procedure TForm1.KeyBoardOn(Sender: TObject);
begin
if OldKbHook <> 0 then begin
UnHookWindowshookEx( OldKbHook );
OldKbHook := 0;
end;
SystemParametersInfo( SPI_SETFASTTASKSWITCH, 0, 0, 0);
SystemParametersInfo( SPI_SCREENSAVERRUNNING, 0, 0, 0);
end;

// выключение клавы
procedure TForm1.KeyBoardOff(Sender: TObject);
begin
SystemParametersInfo( SPI_SETFASTTASKSWITCH, 1, @Dummy, 0);
SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, @Dummy, 0);
OldKbHook := SetWindowsHookEx( WH_KEYBOARD, @KbHook, HInstance, 0 );
end;
Admin: Пользуемся тегами!

но он не работает(((
Помогите плз...
Ответить с цитированием