能使键盘的"window"键或"Ctrl+Esc"无效吗?

albert 2000-01-25 08:39:00
...全文
386 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
upstream 2000-01-27
  • 打赏
  • 举报
回复
同意Venne,这是最简单的方法。另外,可以写钩子程序,或写VXD。
CJ 2000-01-27
  • 打赏
  • 举报
回复
NT下HOOK截CTRL+ESC能行?
Venne 2000-01-26
  • 打赏
  • 举报
回复
如果你是指在程序中屏蔽这两个快捷键,则需要向系统发送当前屏幕保护被激活的消息,这样,这些键均被屏蔽。具体的API函数调用如下:
procedure TForm1.FormCreate(Sender: TObject);
var
temp: Integer;
begin
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, @temp, 0);
end;

procedure Form1.OnClose(Sender: TObject; var Action: TCloseAction);
var
temp: Integer;
begin
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, @temp, 0);
end;

ship 2000-01-26
  • 打赏
  • 举报
回复
你可以试一试windows中的钩子HOOK,接管系统信息, 从中过滤出系统击键。
kxy 2000-01-26
  • 打赏
  • 举报
回复
GetSystemParamInfo
请检索屏幕保护.
albert 2000-01-26
  • 打赏
  • 举报
回复
Dear Ship,

你的方法很好,帮人帮到底,能给出例程吗?
谢谢你的参与!

Albert
albert 2000-01-26
  • 打赏
  • 举报
回复
Dear kxy,

你的方法只对WINDOWS 9X有效,但对WINDOWS NT是不可行的。因此我给你5分。
谢谢你的参与!

Albert
albert 2000-01-26
  • 打赏
  • 举报
回复
Dear blaise,

我用你的方法在WINDOWS NT4.0下试了一下,但是不行。
谢谢你的参与!

Albert
albert 2000-01-26
  • 打赏
  • 举报
回复
Dear venne,

你的方法只对WINDOWS 9X有效,但对WINDOWS NT是不可行的。因此我给你5分。
谢谢你的参与!

Albert
blaise 2000-01-25
  • 打赏
  • 举报
回复
to disable windows key:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,00,00,5b,e0,00,00,5c,e0,\
00,00,00,00
need reboot

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧