在Windows中集成我的程序以替换该特定操作的默认处理程序

时间:2011-11-13 10:01:31

标签: windows winapi hook

我希望在windows中集成我的程序,例如,当用户按下ctrl + shift,或ctrl + v或任何其他Key组合时,我的程序应该运行。我见过像TeraCopy这样的软件,它在按下Ctrl-V时启动,它们处理复制操作,而不是Windows资源管理器(默认处理程序)。

我知道可以使用Windows SDK完成,但我不确定使用哪个API或从哪里开始。任何人都可以提供链接/参考/代码来提供帮助吗?

1 个答案:

答案 0 :(得分:1)

您需要使用键盘钩子,可以使用SetWindowsHookExWH_KEYBOARD_LL常量作为idHook参数来实现。

然后,您可以在键状态发生变化时设置回调函数。当检测到某个组合时(例如同时按下Ctrl和V,但没有其他修改键),则可以执行操作。

请记住,某些程序需要保留Ctrl + V用于其他目的,因此您可能希望使用GetForegroundWindow来检测Windows资源管理器当前是否正在被定位。

请参阅:http://msdn.microsoft.com/en-us/library/windows/desktop/ms644990.aspx