本站首页    管理页面    写新日志    退出


«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


公告
闪耀~!

我的分类(专题)

日志更新

最新评论

留言板

链接


Blog信息
blog名称:
日志总数:17
评论数量:24
留言数量:0
访问次数:133988
建立时间:2005年9月28日




[C Plus Plus]隐藏桌面和屏蔽系统热键编程
原创空间

codebee 发表于 2006/1/8 17:12:38

  -Codebee 隐藏桌面 在隐藏桌面,任务栏,开始按钮,都可以通过windows API 函数 FindWindow() 和 ShowWindow()实现。 隐藏任务栏,你可以使用下面的代码: ShowWindow(FindWindow("Shell_TrayWnd", NULL), SW_HIDE); 隐藏开始菜单按钮,你首先要获得按钮的ID,然后使用下面的代码: ShowWindow(GetDlgItem(FindWindow("Shell_TrayWnd", NULL),0x130), SW_HIDE); Shell_TrayWnd 是任务栏的类0x130 是开始按钮的ID 这些都是通过VC++6.0 下面的Spy++ 工具捕获到的。同理,你可以捕获任何一个你想要的窗口或者按钮。 屏蔽窗口不想隐藏,可以把ShowWindow() 函数换为 EnableWindow()。 如此,当你按下Win键仍然会弹出开始菜单,下面我们来屏蔽热键。 屏蔽系统热键 在Win9x/ME 可以用下面的代码: SystemParametersInfo(SPI_SETSCREENSAVERRUNNING, TRUE, &bOldState, 0); 当然Windows2000 和 Windows XP 是不适合这种方法的。 屏蔽系统热键,在Windows2000 和 Windows XP 是用钩子函数来实现的 首先,在程序中安装一个钩子:SetWindowsHookEx(): hKeyboardHook = SetWindowsHookEx(WH_KEYBOARD, KeyboardProc, hInstance, 0); KeyboardProc() 函数是一个CallBack类型的,也就是说一旦有按键按下系统都会调用此函数。  LRESULT KeyboardProc(...)  {     if (Key == VK_SOMEKEY)    return 1;             // 屏蔽热键     return CallNextHookEx(...); // 返回  } 释放钩子时: UnhookWindowsHookEx(hKeyboardHook); 当然这里是安装的系统级的钩子(关于钩子可以参看Blog里的另外一篇转的文章[C++与WIN32与MFC]利用钩子函数来捕捉键盘响应的windows应用程序.(转))。 Ctrl+Alt+Del  的屏蔽 Ctrl+Alt+Del Windows 不会把它放入键盘钩子的消息中(关于键盘钩子也请参看上面的文章) 在这里说说我的方法,主要是屏蔽任务管理。首先获得系统所以的进程(请参考Blog里的 通过Toolhelp API 查看本地进程的程序(VC 6.0 编译通过))。 然后使用 Bool TerminateProcess (HANDLE hProcess,UINT fuExitCode);完成。 如果大家有更好的方法可以和我交流。


阅读全文(9912) | 回复(2) | 编辑 | 精华
 


回复:隐藏桌面和屏蔽系统热键编程
原创空间

毛(游客)发表评论于2009/8/30 16:56:52

#83我好像不懂啊。我是新手


个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除
 


回复:隐藏桌面和屏蔽系统热键编程
原创空间

flyingcs(游客)发表评论于2006/4/28 14:46:06

呵呵。。。兄弟先转你的一下,我们可以搞联结啊。 www.donews.net/elite

个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除
 


» 1 »

发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.031 second(s), page refreshed 144762690 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号