2010-02-01 97 views
1

我想在一个Qt应用程序中创建一个事件,这个应用程序可以同时运行一个独立的Qt应用程序。正常的sendevent函数需要您命名将会接收它的对象,但我不能使用它,我希望它能像键盘按下事件一样,通过操作系统中的任何打开的程序进行过滤。有谁知道这是怎么做到的吗?谢谢Qt:如何发送事件到操作/窗口系统?

回答

2

看看Inter-Process Communication in Qt。最跨平台的友好方式是使用套接字。

共享内存也是一个选项,但对于事件,我会推荐一个套接字,然后您可以在接收端附加插槽来处理它,就像本地事件一样。

编辑:对不起,我想我错过了真实的一点,当我读其他的答案时,你想使一些记录笔触的任何地方的按键记录器。不确定那个。

1

首先 - 它远离跨平台,不能使用Qt来实现这个特定的功能。那么,回答这个问题,您希望使用哪种操作系统?

第二,你是在写这两个应用程序吗?为什么不通过D-bus(仅限UNIX),甚至通过XMLRPC(http://doc.libqxt.org/tip/qxtrpcservice.html)传递您的“事件”,并避免整个伪造事件业务?

+0

谢谢。是的,我正在写这两个,我正在使用kubuntu。我想要使​​用事件的原因是因为我只是试图模拟程序在目标上运行后如何运行 – Ayeayeron 2010-02-01 20:39:29

相关问题