Java屏蔽Windows按键代码
来源:互联网 发布:ipad看图片软件 编辑:程序博客网 时间:2024/06/05 11:57
用到的包有
platform.jar
import com.sun.jna.platform.win32.Kernel32;import com.sun.jna.platform.win32.User32;import com.sun.jna.platform.win32.WinDef.HMODULE;import com.sun.jna.platform.win32.WinDef.LRESULT;import com.sun.jna.platform.win32.WinDef.WPARAM;import com.sun.jna.platform.win32.WinUser.HHOOK;import com.sun.jna.platform.win32.WinUser.KBDLLHOOKSTRUCT;import com.sun.jna.platform.win32.WinUser.LowLevelKeyboardProc;import com.sun.jna.platform.win32.WinUser.MSG; public class Test { private static HHOOK hhk; private static LowLevelKeyboardProc keyboardHook; private static User32 lib; public static void blockWindowsKey() { if (isWindows()) { new Thread(new Runnable() { @Override public void run() { lib = User32.INSTANCE; HMODULE hMod = Kernel32.INSTANCE.GetModuleHandle(null); keyboardHook = new LowLevelKeyboardProc() { public LRESULT callback(int nCode, WPARAM wParam, KBDLLHOOKSTRUCT info) { if (nCode >= 0) { switch (info.vkCode) { case 0x5B: case 0x5C: return new LRESULT(1); default: //do nothing } } return lib.CallNextHookEx(hhk, nCode, wParam, info.getPointer()); } }; hhk = lib.SetWindowsHookEx(13, keyboardHook, hMod, 0); int result; MSG msg = new MSG(); while ((result = lib.GetMessage(msg, null, 0, 0)) != 0) { if (result == -1) { break; } else { lib.TranslateMessage(msg); lib.DispatchMessage(msg); } } lib.UnhookWindowsHookEx(hhk); } }).start(); } } public static void unblockWindowsKey() { if (isWindows() && lib != null) { lib.UnhookWindowsHookEx(hhk); } } public static boolean isWindows() { String os = System.getProperty("os.name").toLowerCase(); return (os.indexOf("win") >= 0); } //测试 public static void main(String[] args) { unblockWindowsKey();} }
阅读全文
0 0
- Java屏蔽Windows按键代码
- [Windows Hook] 屏蔽键盘按键
- windows mobile 键盘钩子 屏蔽按键
- 屏蔽按键
- 屏蔽Windows按键(除却ALT+CTRL+DELETE)
- JS获取按键的代码,Js如何屏蔽用户的按键
- Javascript屏蔽键盘按键
- javaScript屏蔽按键
- Javascript 屏蔽按键
- js屏蔽按键
- js屏蔽按键
- Window常用按键屏蔽
- 屏蔽按键,选择
- 屏蔽HOME按键 ?
- Android 屏蔽 Home 按键
- android屏蔽按键
- MFC :屏蔽按键
- [MFC]屏蔽按键
- 零基础写Java知乎爬虫之将抓取的内容存储到本地
- HDU6035-Colorful Tree
- Java初学者都必须理解的六大问题
- 总记不住git上传代码前的
- spring事务管理配置以及事务相关知识点
- Java屏蔽Windows按键代码
- 使用Docker Registry搭建Docker私有仓库-极简
- javaFX——非UI线程界面更新问题
- Linux信号列表
- oracle 视图(view)的使用
- 梯度下降法
- 将博客搬至CSDN
- 线性代数 逆矩阵
- android秒启动unity,和给unity添加过渡图片