Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Блокировка KeyBoard и Mouse с возможностью разблокировки   Найти похожие ветки 

 
Bonial ©   (2004-01-06 04:20) [0]

Мне нужно заблокировать клаву и "грызуна" на некоторое время. Нашел процедуру EnableHardwareInput(b:boolean) в файле user.exe. Но как ее оттуда достать? LoadLibrary не помогает: LoadLibrary("user.exe")=0.


 
Kerk ©   (2004-01-06 14:17) [1]

user.exe - 16-ти разрядный, поэтому LoadLibrary тут не работает. В крайнем случае используй недокументированные LoadLibrary16, GetProcAddress16, QT_Thunk

или используй функцию BlockInput


 
asCrypter   (2004-02-03 11:16) [2]


> используй функцию BlockInput


но в XP работать не будет - я пробовал :)


 
dr Tr0jan ©   (2004-02-03 13:13) [3]

Попробуй:
systemparametersinfo (97, word (true), @oldval, 0); // - для включения;
systemparametersinfo (97, word (false), @oldval, 0); // - для включения.

В Win9x сто пудово работает, в WinXP не пробовал, но вроде должно.


 
DeadMeat ©   (2004-02-03 17:17) [4]


[2] asCrypter   (03.02.04 11:16)

> используй функцию BlockInput

но в XP работать не будет - я пробовал :)

А у меня в XP работает...


 
Slym ©   (2004-02-04 13:17) [5]

2 DeadMeat ALT CTRD DEl  и заработало...


 
DeadMeat ©   (2004-02-04 14:10) [6]

> [5] Slym ©   (04.02.04 13:17)
Так ведь и в Win9x так же можно сделать... Факт в том, что во всех виндах BlockInput работает... Правда в WinNT не проверял...


 
Gero ©   (2004-02-04 15:01) [7]

>Мне нужно заблокировать клаву и "грызуна" на некоторое время

Зачем так наказывать бедного юзера?


 
Vit@ly ©   (2004-02-04 15:13) [8]

procedure TForm1.Button1Click(Sender: TObject);
var
  xBlockInput : function(Block: BOOL): BOOL; stdcall;
begin
  xBlockInput(true);
  Sleep(15000);
  xBlockInput(false);
end;


 
DeadMeat ©   (2004-02-04 19:52) [9]

> [8] Vit@ly ©   (04.02.04 15:13)
А эт чево такое...??


 
Vit@ly ©   (2004-02-04 20:27) [10]

это шутка, а вот так серьезно:
function FuncAvail (VLibraryname, VFunctionname: string; var VPointer: pointer):
boolean;
var
 Vlib: tHandle;
begin
 Result := false;
 VPointer := NIL;
  if LoadLibrary(PChar(VLibraryname)) = 0 then
     exit;
  Vlib:= GetModuleHandle(PChar(VLibraryname));
  if Vlib <> 0 then
  begin
   VPointer := GetProcAddress(Vlib, PChar(VFunctionname));
   if VPointer <> NIL then
      Result := true;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 xBlockInput : function(Block: BOOL): BOOL; stdcall;
begin
if FuncAvail("USER32.DLL", "BlockInput", @xBlockInput) then
begin
 xBlockInput(true);
 Sleep(15000);
 xBlockInput(false);
end;
end;



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.031 c
14-1079289669
Asteroid
2004-03-14 21:41
2004.04.11
Такое не бывает!


1-1082482837
Yegorchic
2004-04-20 21:40
2004.04.11
Goto


3-1079179878
IGOREK
2004-03-13 15:11
2004.04.11
Порекоммендуйте DB движок


1-1080015761
Balkon
2004-03-23 07:22
2004.04.11
StringGrid и DrawText в onDrawCell.


6-1079672319
boa
2004-03-19 07:58
2004.04.11
Помогите разобраться с функцией NetServerGetInfo!!