您好,请教如何屏蔽 win 键 ?谢谢(20分)

  • 主题发起人 主题发起人 wjlsmail
  • 开始时间 开始时间
W

wjlsmail

Unregistered / Unconfirmed
GUEST, unregistred user!
您好,请教如何屏蔽 win 键 ? 谢谢
 
Keyboard hook
 
给你一个地址:http://www.iligia.com/
别忘了给我加分
 
嘿嘿 楼长
别忘了给我加分,那网站就是我们的。 www.iligia.com
那程序就是我写的。
 
To:ligia
我想要你的程序及源码,可以吗?谢谢。


deitiqpl@163.com
 
to 大梦
我们网站里有,自己去下载不就可以了吗!
 
使用键盘低层Hook吧,代码如下:  D6上调试通过
function LowLevelKeyboardProc(nCode:integer;WParam:WPARAM;LParam:LPARAM):LRESULT;stdcall;
type
KBDLLHOOKSTRUCT=record
vkCode:DWORD;
scanCode:DWORD;
flags:DWORD;
time:DWord;
dwExtraInfo:dword;
end;
var
fFlag:BOOL;
p:^KBDLLHOOKSTRUCT;
begin
result:=0;
fFlag := false;
p:=Pointer(LPARAM);
if (ncode=HC_ACTION) then
begin
case wparam of
WM_KEYDOWN,
WM_SYSKEYDOWN,
WM_KEYUP,
WM_SYSKEYUP:
fFlag :=(p.vkCode = VK_Lwin) or (p.vkCode = VK_Rwin)or (p.vkCode = VK_apps);
end;
end;
if fFlag = true then
Result:=1;
if ncode <> 0 then
Result := CallNextHookEX(0,ncode,wparam,lparam);
end;

procedure TForm1.Button1Click(Sender: TObject);
const
WH_KEYBOARD_LL=13;
begin
setwindowshookexw(WH_KEYBOARD_LL,LowlevelKeyboardproc,hinstance,0);
end;
 
老大,加分啊
 
谢谢Yeah,谢谢您
 
我写到
setwindowshookexw(WH_KEYBOARD_LL,LowlevelKeyboardproc,hinstance,0);
怎么不能运行,提示:
[Error] Unit1.pas(42): Incompatible types: 'regular procedure and method pointer'

请问老大,我错在了哪里?
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部