WPF C#中的捕获键未聚焦时的应用程序
问题描述:
即使应用程序已最小化或未聚焦,我也要捕获PrintScreen按钮。我见过一些片段,但是这些工作都不在WPF中,仅在Winforms中有效。任何人都可以提供一些代码开始?WPF C#中的捕获键未聚焦时的应用程序
答
你想要什么叫做“全球键盘钩子” 有一个不错的解决方案在这里:http://www.codeproject.com/KB/cs/globalhook.aspx
+0
请在答案中加入一些细节,并将链接作为参考。有,或者更好的说,有很多很好的答案,因为链接被破坏而不再可用。 – Masoud
答
请参阅以下博客文章的你怎么可以在一个WPF应用程序中实现全局快捷键为例。
在WPF中实现全局热键:https://blog.magnusmontin.net/2015/03/31/implementing-global-hot-keys-in-wpf/。
全局或系统范围的热键是与特定窗口相关联的键或键的组合,每当用户在系统中的任何位置按下该键或键组合时,它将接收消息。
确实没有.NET API:为您的应用程序注册热键,但有一个本机RegisterHotKey方法,您可以使用P/Invoke从托管代码调用。请参阅链接了解更多信息。
你很可能需要创建全局键盘钩子。代码是相同的,无论是WinForms,WPF或其他。 – Evk
你需要调用'user32.dll',它拥有你需要的一切。 – Jegan