我在 Qt 中有一个应用程序。它是一个窗口。此窗口显示了某些数据。
此窗口是从另一个应用程序启动的。
应用程序很可能是从另一个应用程序的不同实例启动的,具有不同的数据。
假设我已经运行了一个应用程序实例,我如何确保如果再次调用该应用程序,它不应该启动另一个实例,而是应该使用新集合刷新现有窗口中的数据?
简而言之,一个应用程序有一个窗口,它显示与不同调用一起传递的刷新数据。
编辑:我检查了。应该足以解决我的问题。但是,我在 Qt 安装中找不到相关文件。我了解到它从来不是 Qt 解决方案的一部分,必须手动下载。如果是这种情况,是否会影响任何许可问题?
编辑2: 我有一个实例,比方说,A,应用程序已经打开。我尝试启动实例 B。B 向 A 发送消息。是否可以使用此消息检查 A 是否满足某些条件,然后决定是否打开 B?
像这样...
- A 已经在运行
- B现已推出
- B 向 A 发送消息
- A 尝试使用此消息确认某些内容
- 如果消息为真(假设),保持 A 运行并将 B 作为新实例打开
- 如果不是...关闭 B,并让 A 使用此新信息刷新数据
这是否可以使用 QtSingleApplication,尤其是第 6 步?或者新实例会在检测到已经运行的实例后立即关闭吗?
另外,如何在我的应用程序中集成 QtSingleApplication?我只需要包含标题和cpp吗?我不希望构建一个 dll 并像那样工作。是否需要其他配置?
如果有人可以提供帮助,我将不胜感激。