我想创建一个Windows实用的应用程序,它可以随时使用键盘快捷键的任何其他应用程序中调用,如:如何注册自定义的快捷键Windows应用程序
•赢 + 牛逼
•按Ctrl +Ť
•Alt键 + 牛逼
•按Ctrl + Alt键 + 牛逼
•按Ctrl + 移 + 牛逼
我可以使用组合键,以及如何在Windows注册表中设置它们?
(如果快捷方式使用由其他应用程序,它当然应该不行。)
我想创建一个Windows实用的应用程序,它可以随时使用键盘快捷键的任何其他应用程序中调用,如:如何注册自定义的快捷键Windows应用程序
•赢 + 牛逼
•按Ctrl +Ť
•Alt键 + 牛逼
•按Ctrl + Alt键 + 牛逼
•按Ctrl + 移 + 牛逼
我可以使用组合键,以及如何在Windows注册表中设置它们?
(如果快捷方式使用由其他应用程序,它当然应该不行。)
做这件事编程当你的应用程序启动时调用此Windows API的选项:
RegisterHotKey(IntPtr hwnd, int id, int fsModifiers, int vk);
并注销调用此API:
UnregisterHotKey(IntPtr hwnd, int id);
无论在user32
的API
存在http://www.pinvoke.net/search.aspx?search=RegisterHotKey&namespace=[All]
如果您的应用程序(或它的快捷方式),请在桌面上,你可以右键点击获取上下文菜单,选择属性,然后在那里输入快捷键。只需点击快捷键文本字段,然后按所需的快捷键。
我分配WIN + Ç我的计算器和WIN + V我的音量控制。
适用于手动快捷键分配 – Sung 2009-03-02 04:10:15
如果您需要更高级的场景来了解shell的快捷方式,您应该首先阅读Win32 Hooks和Hooks Overview。
更具体地说,您需要使用SetWindowsHookEx
函数添加WH_KEYBOARD
钩子。完成后,您还需要通过UnhookWindowsHookEx
解除绑定。
Dino Esposito有一篇老文章,通过一些Win32互操作实现Windows Hooks in .NET。
恐怕这只是你可以通过在注册表中设置值而做的事情,正如在调用某些Windows API例程来实现这一点所必需的其他答案中已经指出的那样。
您是否要求以编程方式或手动方式设置这些快捷方式? – Sung 2009-03-01 00:32:10
什么是STRG?这与CTRL相同吗? – 2009-03-02 14:43:15
STRG是CTRL的德语名称:) – 2009-03-07 17:02:20