XP下如何禁止Ctrl+ESC,Ctrl+Alt+Del等系统键序列?(30分)

  • 主题发起人 主题发起人 dazzling
  • 开始时间 开始时间
D

dazzling

Unregistered / Unconfirmed
GUEST, unregistred user!
搜索了往期答案, 但都不是十分理想
 
一般的键是可以用钩子,但这些搜了以前的东西,都不得,建议拆键盘[:D]]
嘿嘿,说笑的, 帮顶下
 
好像至今还没有什么好的方法,我也顶一下
 
你去找找,网上有个提供DLL文件的,但是没有源码
 
今天試了一下用WH_KEYBOARD_LL但只能屏蔽<Alt>+<Tab>不能弄掉<Ctrl>+<Alt>+<Del>
是拷貝以前麻子的代碼,只是換個消息罷了,下面是麻子原來的代碼:
在離線庫中搜的
来自: 刘麻子, 时间: 2004-04-23 20:52:27, ID: 2576497
普通钩子
=============================动态连接库代码
library DllP;
uses windows;
procedure HookOn;stdcall;
procedure HookOff;stdcall;
var
HookH:HHook; //钩子句柄
function keyhook(Code:Integer;wParam:WPARAM;lParam:LPARAM):LRESULT;stdcall;
begin
Result:=1; //强行 屏蔽
end;

procedure HookOn;
begin
//把WH_KEYBOARD換成 WH_KEYBOARD_LL就可以弄掉<Alt>+<Tab>
HooKH:=SetWindowsHookEx(WH_KEYBOARD,keyHook,HInstance,0);
end;

procedure HookOff;
begin
UnHookWindowsHookEx(HookH);
end;

exports
HookOn,HookOff;
begin
end.


============================在exe中这样:
procedure HookOn ; stdcall; external 'DllP.dll';
procedure HookOff ; stdcall; external 'DllP.dll';

hookon; //挂键盘钩子
 
换个角度,直接hook windows任务管理器,只要hook到这个程序,马上关闭这个程序,那不就等于拦截了上面的三个键了嘛?
 
我要屏蔽的系统键是:ctrl+ESC, alt+TAB, alt+ESC, ctrl+alt+Del
难道真的那么难吗
 
哇,cqwty 的想法真的让人眼前一亮的感觉,怎么偶原来就没想到呢, [:D] 网管程序需要屏蔽这些键吧
 
直接修改注册表可以禁用任务管理器
 
后退
顶部