C++ C++;如何使两个程序进行通信?
问:让两个程序(都在同一台计算机上运行)进行通信和交互的最佳方式是什么?(Windows,C++) 理论情况:C++ C++;如何使两个程序进行通信?,c++,windows,qt,communication,C++,Windows,Qt,Communication,问:让两个程序(都在同一台计算机上运行)进行通信和交互的最佳方式是什么?(Windows,C++) 理论情况: 在Windows PC上,我有一个第三方软件,你可以用它来做一些事情(比如打开/编辑/保存文件…这并不重要)。此第三方软件具有可用的C++SDK,因此您可以为其开发插件 < i >我开发了一个单独的独立的 Windows C++程序(最有可能使用Qt)和GUI。此程序与第三方软件在同一台Windows计算机上运行。此程序将充当遥控器或发送器 使用第三方软件的SDK,我为第三方软件开发了
任何帮助都将不胜感激。我已经在这个问题上做了一个搜索,但是没有特别地发现C++的许多问题,而且大多数都没有很多答案或者不是很清楚,或者没有特别提到与第三方程序的插件的软件通信。它将独立软件和插件分离,因此,只要通信协议匹配,您就可以轻松地将插件连接到任何数量的其他实用程序或脚本中 因此,我可能会开发一个插件来充当服务器,接收命令并用状态进行响应(嘿,如果你真的想,你甚至可以遵循HTTP标准;) 如果您想进行跨机器通信,它是免费的:)
当然,根据软件和使用情况,我会加密通信。有很多解决方案,有很多优点和缺点。你必须阅读每一篇文章,找出最适合你的。没有一个解决方案对每个人都是最好的
这里是一个很好的起点我想使用套接字在远程控制应用程序和服务器应用程序之间建立通信
在这里搜索这些关键字,你会发现很多信息,所以:,。如果你使用的是Qt,我相信它有插件的概念: 否则,COM工作正常。使用C++,我将使用ATL库,但在Qt.中也有COM支持。
如果你想更低级,我会使用套接字或命名管道(因为你使用的是Windows)@Jakobud-你的问题很长,因此我产生了误解。如果两个程序之间的关系是结构化和丰富的(比如使用对象模型),我会使用COM。如果很简单(又名:读/写数据场景),我会使用命名管道或套接字。