问题标签 [keyboard-hook]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
pointers - 一些键盘/鼠标事件不能被捕获-xlib 编程
我有这个程序的问题。它列出了系统上正在运行的当前窗口及其窗口 ID。
结果是,对于我输入的特定窗口 ID,我得到了一个奇怪的结果:对于像 firefox 或 gedit 这样的应用程序,只有运动通知事件有效,其他事件都无效。
对于我的终端(bash),一切正常:按键,按键释放,鼠标通知,鼠标释放,......
为什么会这样?
vb6 - 如何为特殊字符/扩展 ASCII 引发键盘事件?(Visual Basic 6)
如何为特殊字符引发按键事件以输入扩展的 ASCII 字符?
示例代码片段:
keybd_event vbKeyE, 0, KEYEVENTF_KEYDOWN, 0
是否有任何替代方法可以让我使用 KeyCode 作为特殊字符 [例如 Chr$(122)] 而不是预定义和受限的 VbKeyA、VbKeyB、VbKeyC ..... 等?
等待你的回复。
问候,
尚卡尔
winapi - MS 是否更改了 Windows Vista 或 7 中的键盘挂钩?
我使用 和 实现了多种语言(AutoIt、C#)的键盘SetWindowsHookEx
钩子WH_KEYBOARD_LL
。我也知道几个有同样问题的 C++ 程序。
我没有发布任何代码,因为它们在 Windows XP 中完美运行。但是,在 Windows 7 下,在某些时候挂钩会“卸载”或停止处理任何进一步的键。似乎它可能与内存不足有关,但我不太确定。
Microsoft 是否更改了键盘挂钩在 Vista 或 7 中的工作方式以添加一些在某些情况下会卸载第三方挂钩的逻辑?
相关问题:
c++ - 如何在 Windows Mobile 上检测键盘和/或鼠标输入?
我正在开发一个小型 C++ 项目,该项目涉及一个启动器应用程序,该应用程序执行一些设置工作,然后调用真正的应用程序。准确地说,我正在开发启动器应用程序——真正的应用程序是由一个单独的团队完成的。这些程序都部署到 Windows Mobile 设备。现在,我希望能够在真实应用程序(我的启动器启动)中获得所有键盘和鼠标活动的通知 - 我无法修改真实应用程序来执行此操作。
在 Windows 桌面机器上,我会使用SetWindowsHookEx API 来执行此操作。但是,这在 Windows Mobile 上不可用。
我还考虑对进程中的所有窗口进行子类化,以便我可以处理键盘和鼠标输入的相关窗口消息 - 但我不知道如何获得实际进程创建的新窗口的通知。
有人对如何实现这一目标有一些想法吗?
c# - 即使没有浏览器焦点也需要键盘输入的 Web 应用程序
我正在创建一个需要键盘输入的网站应用程序,特别是没有浏览器焦点。
在没有过多介绍我伟大的应用程序想法 (=P) 的情况下,我想响应(甚至只是一次)键盘按键,并理解浏览器不会获得焦点。
我一直在这方面进行了大量研究,并且在键盘“挂钩”方面找到了很多帮助,因此无论哪个应用程序有焦点,我都可以对按键输入做出反应(我一直在玩的那些在vc#)。这些适用于可执行文件,但我不确定如何使用我的 Web 应用程序将它们放入浏览器。
我的问题是:无论浏览器是否有焦点,我都可以使用 ActiveX(或类似 wpf 的任何东西吗?)来访问键盘输入。
非常感谢您的宝贵时间,我很想知道这种事情是否可能,然后再浪费时间学习如何创建和使用 ActiveX(只是为了了解它不是)。
c# - c#中的键盘钩子
我想开发一个按键转换器,它将任何按键转换为我的本地语言。例如,如果用户输入“a”,那么它将被替换为对应的 unicode 字母“ \u0995 ”
我使用的代码类似于:https ://stackoverflow.com/global-low-level-keyboard-hook-freezing-in-c-net-3-5在那里,我编辑如下:
现在,我打开任何应用程序并输入任何内容,我得到输入的字母和“mmm”。
例如,如果我输入:abcd那么我得到的输出为:mmmcmmmdmmmemmmf .........[输出]
现在我的问题是,
1)如何编辑此代码以发送 unicode 字母而不是字母?(我的意思是,如果我输入“p”,那么我希望其他应用程序应该收到类似于这个 unicode 字符的 unicode 字符:“ 0996 ”
2)如何确保只有unicode字符被发送到其他应用程序,键入的字符不能附加。我的意思是,我不想要上面输出中的 unicode 字符和键入的英文字母[输出]
c# - 如何使用c#解开keyboard-hook 开发一个按键更改软件
我正在尝试开发一个软件,它将接受键盘输入,使用输入并返回输入的输入的一些其他字符交换。例如,如果我输入:“abcd”并将交换规则定义为任何俄语字母,那么我希望输出为:“ский”。
我正在使用的代码如下:
我得到的输出为:“aсbкcиdй”,我的意思是输入的字母(英文)不会被代码消耗(我的意思是它们不应该出现在输出中),即使我返回了(System.IntPtr)1
。
我觉得是脱钩的问题。谁能帮我解决这个问题?
如果不可能,那么任何人都可以向我推荐任何使用键盘挂钩的开源软件吗?
javascript - 绕过 Firefox 的刷新行为
如何refresh使用 Javascript 捕获 Firefox 浏览器的按钮或事件,并在刷新表单时模仿 IE 的行为?Firefox 重新填充了破坏我的 ajax UI 的表单。
c++ - 捕获键盘输入和钩子的后果
我正在编写一个 VoIP 程序,其中一个标准功能是按下通话,这意味着在按住键的同时录制和发送音频。无论您是在玩电子游戏还是专注于另一个窗口,该键都会做出反应。
我的问题;
- 是否所有 VoIP 程序都明确使用键盘挂钩来实现这一点?例如,ventrilo/teamspeak/skype/mumble
- 我听说键盘挂钩会对系统造成性能影响,因为每条键盘消息也会发送到 VoIP 应用程序。有没有办法降低成本,性能影响有多大?在我的应用程序中,我的第一要务是性能和有效、低使用计算机资源。
提前致谢
.net - 是否有用于发送击键、鼠标点击、鼠标移动和其他输入的 .NET 库?类似于 AutoHotKey 但用于 .NET 库?
我希望在本质上编写类似于我可以使用AutoHotKey执行的代码,仅在 .NET 和 C# 中,因为它是一个更强大的环境。我不知道是否有可用于此类钩子的包装库。
有谁知道为 .NET 执行此操作的库?