问题标签 [registerhotkey]
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.
delphi - 处理包含“Ctrl”的热键后,SendInput 失败
我正在用 Dephi 2007(32 位)编写一个 Windows 可执行文件,它将击键发送到另一个应用程序。
从其他应用程序中按下热键或热键组合会导致我的应用程序向该应用程序发送击键。如果热键组合不包含 Ctrl: 即,F11或者Shift+F11正常工作,但Ctrl+F11导致我在处理我的应用程序中的热键后第一次调用 SendInput 失败,我的方法工作正常。
我已经在 64 位 Windows 7 和 32 位 Windows XP 中尝试了我的应用程序与几个不同的目标应用程序。在我尝试过的所有情况下,都会出现同样的失败模式。
在处理热键组合时,下面的代码尝试发送两个 Shift+Tab 键,然后是一个 Tab 键到目标应用程序。但是,当 Ctrl 是热键组合的一部分时,第一个 Shift+Tab键在目标应用程序中永远不会出现。(可以看到后续键。)
我错过了什么?
编辑:我在“解决方案”中修改了下面的代码(根据我对 Sertac 的评论)......它现在工作正常,即使 Ctrl 作为热键序列的一部分。
c# - 我想注册的任何热键似乎都已被占用
我正在尝试在 Visual c# 2012 中注册一个全局热键,构建目标框架 .NET3,在使用http://www.dreamincode.net/forums/topic/180436-global-hotkeys/作为教程之后,我得到了以下(缩写)文件:
GlobalHotkey.cs
/li>GlobalHotkeyConstants.cs
/li>我的 Form1.cs
/li>
无论我想选择什么热键,都无法注册。我尝试使用来自http://hkcmdr.anymania.com/的热键资源管理器来检查热键是否已被使用,但它只告诉我它是免费的。
我能做些什么来解决这个问题?
java - 在 Eclipse 中使用 JIntellitype
我正在尝试为我的 java 应用程序使用全局热键。我进行了很多搜索,最后决定使用 JIntellitype。我了解到它使用 JNI 与 OS 交互。我从 https://code.google.com下载了 JIntelliType API /p/jintellitype/下载/列表
我已将 jar 包含在我的项目中,它显示在 (Project_name) -> (Referenced libraries) -> jintellitype_1.3.9.jar 中。我是否正确导入了它?
我编写了以下示例程序来测试它
它没有显示任何错误或警告。但是没有打印“第 1 行”和“第 2 行”行。我的控制台在运行后显示了这个。
是代码有问题还是我没有正确导入?有没有 JIntellitype 的示例程序。这里有一个https://code.google.com/p/jintellitype/downloads/list但里面没有 .java 文件。它已经编译了 .class 文件。
delphi - 当另一个控件具有焦点时,我的表单如何检测 KeyDown 事件?
仅当焦点设置为主窗体时,上述事件才有效。如果我运行应用程序并继续按 Tab 并将焦点更改为窗体上的任何控件,它将禁用此事件,直到我们再次将焦点更改为主窗体?
问题是 即使焦点不在主窗体中,我如何检测三个键被按下?
我还想如果我使用RegisterHotKey但在我的应用程序运行时注册Q、W 和 E并不是一个好主意。
windows - 如何将 F12 注册为热键
根据这篇文章:
该F12键始终保留供调试器使用,因此不应将其注册为热键。即使您不调试应用程序,F12它也会保留,以防内核模式调试器或即时调试器驻留。
但是,不知何故有一种解决方法,因为 AutoHotkey 与F12. 有人知道怎么做吗?
c# - 使用 user32.dll 的全局热键不适用于 Windows 键
我正在尝试编写一个对 Hotkey Win+V 做出反应的 C# 应用程序,因为它易于访问并且我不想与其他 Windows 热键发生冲突。我正在使用在 Stackoverflow 上找到的全局热键类:
我自己的程序是这样的:
这在我的电脑上不起作用。由于修饰键 Win,我在 RegisterHotKey 函数中遇到异常。该代码与例如 ModKey.Control 完美配合。只有 Win 键不起作用。
我已经在 Internet 上看到了一些代码,人们使用 windows 键和 user32.dll 中的 RegisterHotkey 函数。
c# - 使用 RegisterHotKey 使用 Numpad 注册热键
我已经RegisterHotKey为我的应用程序注册了一个全局热键。我需要为应用程序注册 Control + Shift + 0(在小键盘中)。我已经使用下面的代码片段注册了它:
但是它没有按预期响应,其他热键正在注册,只有上述组合没有响应。
c# - 全局热键调用了两次
我在 Windows 中遇到了全局热键问题。我和我的朋友正在开发一个程序(在 C# 中),它使用通过来自 User32.dll 的 RegisterHotkey 函数调用注册的 Windows 全局热键。
在我的电脑上一切正常,但在我朋友的电脑上注册热键时,即使按一次键并指定了 MOD_NOREPEAT 标志,它也会被调用两次。我尝试注册两个相同的热键,但这是不可能的(只允许对指定的热键组合进行一个注册调用,第二个相同的组合被 RegisterHotkey 函数拒绝)。
这是代码。我为已经注册的热键制作了一个简单的包装器(从我的代码管理注册的组合):
这是管理注册处理程序的类的代码:
这段代码在 App.xaml.cs 中的 OnLoadCompleted 方法中调用:
什么会导致这个问题?
(抱歉可能出现语言错误。)
c# - C# RegisterHotKey - 想知道哪个进程调用了它
我的 RegisterHotKey 运行良好:
从任何应用程序中,当按下 Grave(`) 时,都会调用热键。
现在,我想知道哪个应用程序调用了 Grave(`) 例如 WINWORD / NOTEPAD / EXEL 等。
总是返回 'MyHotKey',我的 c# 程序的名称。