2010-06-15 106 views

回答

3

pyhook module提供了使用Windows键盘挂钩的相当简单的方法。

2

我相信你需要在Windows API级别工作(没有更高级别的功能),RegisterHotKey(第一个参数为空指针)将全局热键与当前线程的消息队列相关联 - 表示线程必须然后继续为其正常的Windows消息循环提供服务。我怀疑你会想把整个事情作为一个Windows服务运行 - 例如每this recipe,它使用Python for Windows Extensions - 确保它始终在系统运行时运行。

3

作为替代方案,我会建议使用每个工具来设计它的目的。也就是说,使用AutoHotkey来设置热键和其他类型的Windows自动化。 AutoHotkey(AHK)通过多种方式很好地与Python连接(许多在AHK论坛中讨论过)。一个有趣的方法是使用autohotkey.dll - 将AHK的功能封装到一个DLL中,您可以用​​调用该DLL。

AHK是为Windows自动化设计的,像这样的任务对它来说是微不足道的。更复杂的任务也是如此。您可以节省数小时挖掘API文档。 AHK可以编译成重量为几百KB的.exe文件,以便您可以将其与任何Windows应用程序一起分发。