【叶帆开源区】屏蔽Windows98/2000/XP任务栏、win键、Ctrl+Esc、Alt+Tab、Ctrl+Alt+Del
叶帆
博客专家认证
业界专家认证 2004-10-21 04:44:40 关于这方面的文章挺多,对任务栏、win键、Ctrl+Esc、Alt+Tab的屏蔽,一般方法较为简单,最多用底层键盘钩子+DLL就能完美解决。但是针对Ctrl+Alt+Del的屏蔽,方法基本有两种,一种是采用Gina Dll技术,替换Window自带的MSGINA.DLL,这个技术不仅不易调试(很容易系统就无法进入了),并且效果很不好,按Ctrl+Alt+Del三键虽然不会出现任务管理器,但屏幕闪烁;另一种是采用DLL注入技术,在消息循环中真正屏蔽Ctrl+Alt+Del键,效果很好,不会出现第一种方法中的闪屏现象。
本程序就是采用了第二种方法有效的屏蔽了Ctrl+Alt+Del。除此之外,在屏蔽任务栏时还有一个技术难点,就是当用户设置任务栏为自动隐藏时,不能很好的屏蔽任务栏(在Win2000鼠标滑到底部,任务栏还会出现),在XP下通过API函数SHAppBarMessage很有效的解决了该问题,不过同样的代码在Win2000中不起作用,MSDN有一段话说,在Win2000下无法用程序设定该设置,只能手动设置(天知道微软为何屏蔽该功能?),所以我也没有办法,用API函数keybd_event勉强解决了该问题(如果解决不好,它会提示你关闭任务栏自动隐藏功能)。
此外,最大的一个改变是,我把所有的功能集成到一个只有29K的控件里,只需两个方法就可以完美搞定。
【源码下载】--------------------------------
http://blog.csdn.net/yefanqiu 【叶帆源码】[012] 屏蔽系统键(Win98/2000/XP)
【源码介绍】--------------------------------
http://blog.csdn.net/yefanqiu/archive/2004/10/21/145922.aspx
【示例源码】--------------------------------
'************************************************************
'**模 块 名:frmDemo
'**说 明:YFsoft 版权所有2004 - 2005(C)
'**创 建 人:叶帆
'**日 期:2004-10-21 15:47:15
'**修 改 人:
'**日 期:
'**描 述:屏蔽系统键 Win98/Win2000/WinXP
'**版 本:V1.0.0
'************************************************************
Option Explicit
'************************************************************
'**函 数 名:Command1_Click
'**输 入:Index(Integer) - 0,1
'**输 出:无
'**功能描述:屏蔽系统键
'**全局变量:
'**调用模块:
'**作 者:叶帆
'**日 期:2004-10-21 15:47:12
'**修 改 人:
'**日 期:
'**版 本:V1.0.0
'************************************************************
Private Sub Command1_Click(Index As Integer)
If Index = 0 Then
YFSysKey1.HideSysKey '屏蔽
Else
YFSysKey1.ShowSysKey '显示
End If
End Sub
-------------------------------
【叶帆开源区】其它链接
XP界面窗体制作(可放缩、可缩小到托盘)
http://community.csdn.net/Expert/topic/3387/3387552.xml?temp=.416424
有意思的老人源码
http://community.csdn.net/Expert/topic/3376/3376547.xml?temp=.1939661
VB源码之友
http://community.csdn.net/Expert/topic/3365/3365079.xml?temp=7.926577E-02
定制公用对话框(如photoshop的文件打开对话框)
http://community.csdn.net/Expert/topic/3385/3385386.xml?temp=.2206842
绝对经典的扫雷源码(仿微软扫雷界面)--可以作弊呢!!!
http://community.csdn.net/Expert/topic/3380/3380429.xml?temp=.3048517
MSComm串口通信示例
http://community.csdn.net/Expert/topic/3387/3387736.xml?temp=.2366754
任意透明窗体--运用API实现特异窗体
http://community.csdn.net/Expert/topic/3389/3389796.xml?temp=.8869898