2009-05-26 73 views
1

我如何编写一个侦听特定按键笔画以启动它的Windows应用程序!只是谷歌桌面应用程序的工作方式,按住Ctrl两次,它弹出!如何创建侦听Windows事件的应用程序?

我宁愿在delphi中的例子,但我不介意其他语言!

对于初学者,我认为它应该是在Windows上运行的服务(我可以能够创建服务应用程序)

迦特

+1

的重复http://stackoverflow.com/questions/9097 45 /如何创建应用程序 - 监听Windows事件? – unwind 2009-05-26 09:21:00

+1

这一个有更多的答案,所以也许最好关闭其他 – 2009-05-26 10:58:56

回答

-1

,如果你想用你可以把它写成一个服务公司自己的消息泵,捕获所有的窗口消息,检查与按键相关的那些消息,并且不将它们传递给默认消息处理程序。

我的德尔福很生锈(版本4),所以我不能说如何去做。

在C#中编写服务的简单替代方法是设置Opacity为0%,KeyPreview = True和ShowInTaskbar = False的应用程序窗体。

也许你的Delphi版本有类似的东西。

+2

设置KeyPreview是否使窗口接收来自系统的所有键盘事件?我对此表示怀疑。它只是让窗口在该窗口上的控件之前接收键盘事件,就像Delphi的KeyPreview属性一样。这对Gath的问题没有好处。 – 2009-05-26 13:05:59

+0

确实如此。 我承认我没有想到就发布了。该死的给我一个明确的模糊逻辑案例。 对不起。 – ChrisBD 2009-05-27 06:20:04

0

做一个安装全局键盘钩子的服务。

+1

为什么它需要一个服务而不是一个普通的程序? – 2009-05-26 19:30:33