Jak*_*son 7 c++ windows qt communication
问题:使两个程序(在同一台计算机上运行)进行通信和交互的最佳方法是什么?(Windows,C++)
理论情况:
在Windows PC上,我有一个第三方软件,你用来做东西(比如打开/编辑/保存文件......这不是很重要).此第三方软件具有可用的C++ SDK,因此您可以为其开发插件.
我开发了一个独立的 Windows C++程序(最有可能使用Qt)和GUI.该程序可在与第三方软件相同的Windows计算机上运行.该程序将充当遥控器或发送者.
使用第三方软件的SDK,我为第三方软件开发了一个小插件.该程序充当接收器,因此我的Qt GUI可以发送此插件将接收的命令,从而相应地远程控制第三方软件.
因此,对于一个基本示例,我可以在我的独立GUI上按下一个按钮,该按钮将与插件通信,然后该插件将打开第三方软件中的指定文件.
我实际上正在寻找的是开发独立软件,它可以与我为第三方软件开发的插件来回通信.
对此最好的方法是什么?我真的不知道从哪里开始或看什么.是否有通用的C++库使这种类型的东西变得容易?
我对C++比较陌生,对Qt来说很新,所以请尽量详细说明.请不要只说"使用共享内存"或类似的东西,因为我不会确切地知道你在说什么.
该程序不会在一台单独的计算机上运行,所以我不认为这里不需要网络资源.
我正在考虑的一些问题:
如果用户同时打开第三方软件的多个副本,该怎么办?我的独立软件如何知道与哪个人通信?
如果我已经运行了独立软件并打开第三方软件,那么插件是否必须注册或找到我的独立软件才能与之通信?
如果我已经运行了第三方软件,然后打开我的独立软件,它是否必须扫描插件以查看它是否正在运行或如何找到它?
任何帮助将不胜感激.我已经对SO上的主题进行了搜索,但没有看到很多关于C++的问题,而且大部分都没有很多答案,或者不是很清楚,或者没有特别提到使用插件的软件通信第三方计划.
有许多解决方案,各有利弊。您必须对每个内容进行一些阅读才能找出最适合您的内容。没有适合所有人的解决方案
这是一个很好的起点http://msdn.microsoft.com/en-us/library/aa365574(v=vs.85).aspx
| 归档时间: |
|
| 查看次数: |
25088 次 |
| 最近记录: |