Public Declare Function WindowFromPointXY Lib "user32" Alias "WindowFromPoint" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
'本函数根据屏幕坐标返回被隐藏项目的句柄
Public Type POINTAPI
X As Long
Y As Long
End Type'鼠标坐标类型定义
Public Const SW_HIDE = 0'隐藏常数
Public Const SW_SHOW = 5'显示常数
Public Const WM_HOTKEY = &H312
'热键标志常数,用来判断当键盘按键被按下时是否命中了我们设定的热键
Public Const GWL_WNDPROC = (-4)
Public preWinProc As Long, MyhWnd As Long,uVirtKey As Long
'定义系统的热键,原中断标示,被隐藏的项目句柄
'请紧记下面的热键拦截函数,它将对你将来编写WINDOWS32高级控制程序大有帮助!
Public Function Wndproc(ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
'热键拦截过程
If Msg = WM_HOTKEY Then'如果拦截到热键标志常数
If wParam = 1 Then
'如果是我们的定义的热键F12...
'为了节省篇幅,我对热键拦截处理不是非常严密...
hideDONE
'执行隐藏鼠标所指项目
End If
End If
'如果不是热键,或者不是我们设置的热键,交还控制权给
'系统,继续监测热键
Wndproc = CallWindowProc(preWinProc, hwnd, Msg, wParam, lParam)
End Function
Public Sub hideDONE()'最关键的项目隐藏过程
Public Sub hideDONE()
Dim pt32 As POINTAPI
GetCursorPos pt32 ''得到鼠标屏幕坐标
MyhWnd = WindowFromPointXY(pt32.X, pt32.Y)
''得到所在位置窗体项目句柄
If MyhWnd = Chinahide.hwnd Then Exit Sub
'拒绝隐藏程序自身
Chinahide.List1.AddItem (MyhWnd)
''添加相关信息
ShowWindow MyhWnd, SW_HIDE
'执行隐藏功能
End Sub
‘模块结束
本文代码不仅将向编程爱好者展示“隐藏引擎”的魅力,也将让您立刻成为一个后台控制和系统级热键的编程高手。它适用于windows95/98/nt4/me/2000,vb5/6开发平台。
看到这里,你一定会想到能够将它应用到哪里了吧(譬如加个密码就可以保护你的桌面!)——心动不如行动,DO IT BY YOUSELF!
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!



