在特定程序中使键盘不发挥作用VB
2007-07-31 11:57
393 查看
可以使用钩子函数
首先声明api函数和常量
Public Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long
Public Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long
Public Declare Function GetCurrentThreadId Lib "kernel32" () As Long
Public Const WH_KEYBOARD = 2
Public gLngKeyHook As Long
Public Function KeyboardProc(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
KeyboardProc = -1
End Function
然后在窗口中设置钩子函数:
gLngKeyHook = SetWindowsHookEx(WH_KEYBOARD, AddressOf KeyboardProc, App.hInstance, GetCurrentThreadId)
最后别忘了在unload时取消钩子函数
UnhookWindowsHookEx gLngKeyHook
首先声明api函数和常量
Public Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long
Public Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long
Public Declare Function GetCurrentThreadId Lib "kernel32" () As Long
Public Const WH_KEYBOARD = 2
Public gLngKeyHook As Long
Public Function KeyboardProc(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
KeyboardProc = -1
End Function
然后在窗口中设置钩子函数:
gLngKeyHook = SetWindowsHookEx(WH_KEYBOARD, AddressOf KeyboardProc, App.hInstance, GetCurrentThreadId)
最后别忘了在unload时取消钩子函数
UnhookWindowsHookEx gLngKeyHook
相关文章推荐
- 用VB编写键盘拦截程序
- 用VB编写键盘拦截程序[转]
- 用VB编写键盘拦截程序
- Debug汇编程序 NTVDM has encountered a system error 连接到系统上的设备没有发挥作用
- 用VB编写键盘拦截程序
- VB键盘鼠标无动作调用程序的尝试
- asp.net 程序性能优化的七个方面 (c#(或vb.net)程序改进)
- VB6.0新手入门代码 用VB打开程序所在目录下的文件
- 通过键盘输入100 以内正整数的加、减运算式,请编写一个程序输出运算结果字符串
- CTFcrackTools-V3 - 一款旨在帮助 CTFer 在 CTF 中发挥作用的一个框架
- 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
- 防止同一个程序多次运行。 [VB.NET]
- #!/usr/bin/env 脚本解释程序的作用
- 启动程序,EditText自动弹出输入法键盘问题
- VB做的程序的代码是放在哪里了呢?
- 一个辉常简单VB程序
- VB.NET启动外部程序
- 从键盘传入多个字符串到程序中,并将它们按逆序输出在屏幕上
- VB程序的破解
- 链表编写26个字母按特定字母值插入或删除的完整程序