2

我需要使我的应用程序一次只能运行一个实例。此外,当它使用命令行参数启动时(例如注册打开某些文件类型时),它应该将参数传递给现有实例并立即退出而不显示图形界面。大家应该都知道我的意思了。使用的框架是 Qt 4,看起来它必须有一些设施。有任何想法吗?

4

3 回答 3

3

有一个 Qt Solutions 项目这样做:

Qt 单一应用程序

于 2009-04-28T10:47:17.727 回答
1

有几种方法可以进行进程间通信。示例可以在 Qt 的示例部分中找到。

于 2009-05-07T00:25:20.047 回答
0

也可以使用 QSharedMemory 自己实现这种类(参见 QSharedMemory::attach() )。它既可以用于确定其他实例是否已经在运行,也可以用于通信/发送消息。除了一些指针魔术和内存复制之外,它非常简单。

于 2009-04-28T20:56:33.550 回答