-2

TL;DR - 想要在不干扰其他应用程序读取键盘输入的情况下检测全局热键。RegisterHotKey 会中断常规输入,所以这是不行的。

你好,谢谢你的时间,

我最近一直在摆弄 WPF,试图边走边学,并决定做一个小项目来帮助我更快地学习。

我遇到了这个问题,我想说,这并不是一个完全正确的问题,更像是一个逻辑矛盾。

我一直在做的是注册全局按键。当我的窗口是顶部窗口或突出显示另一个窗口时,请注册 Windows 上的每个按键。我一直在使用 RegisterHotKey 函数,如果我理解正确,它会告诉计算机以不同的方式解释键盘输入。当此应用程序在后台打开时,这使我无法像往常一样使用键盘。

我所做的每一次搜索都是空的,它们都将我引向 RegisterHotKey,这在我的情况下可能不是正确的解决方案。我想阅读全局按键,同时仍保持相同的旧键盘输入。

即使是关于如何做到这一点的轻微建议也将不胜感激。

4

1 回答 1

0

对于初学者,我想说的是,否决一个没有冒犯性的问题,没有违反规则,并且是一个完全陷入困境的程序员在尝试自己解决几天后寻求帮助..这只是纯粹的邪恶.

无论如何,在意识到使用 RegisterHotKey 无法完成我想要的事情后,我决定在其他地方寻求解决方案。我最终在低级键盘输入上设置了一个钩子,因为我正在上班,所以我没有我的代码,我将在今天晚些时候发布。

主要结论:如果你想读取全局按键或全局热键,如果你想在不中断其他应用程序的情况下,你可能想要使用钩子,如上段所述。

于 2016-10-19T05:06:02.320 回答