• 6011阅读
  • 7回复

[提问]两个进程之间通讯问题 [复制链接]

上一主题 下一主题
离线znlangel
 

只看楼主 倒序阅读 楼主  发表于: 2019-06-20
— 本帖被 圣域天子 从 Qt安装与发布 移动到本区(2019-06-24) —
问题前提:现在我有两个EXE文件,其中一个是32位的(因为是开发的第三方的SDK,然后提供的库就只有32位的,所以只能开发了32位的工程了),另一个是64位的工程,现需要两个工程之间进行通讯,采用的是windows下自定义消息类型然后发送消息这样的机制来做的,32位的工程是发送消息端,64位作为消息响应端。
问题描述:现在32位的工程点击UI上的一个按钮发送消息出去,然后64位的工程去接受消息,那么问题来了,就是有的时候两者之间的消息通讯是正常的,收发消息是没问题了,但是有的时候呢,收发消息又不能正常的进行。如果分别启动Qt程序去调试的时候,就很正常的,但是如果直接运行exe呢,有的时候ok,有的时候ng,请问,有碰到过这类问题的朋友吗?
离线hgx123

只看该作者 1楼 发表于: 2019-06-20
用的什么通信方式?SendMessage吗
离线圣域天子

只看该作者 2楼 发表于: 2019-06-20
基本都是用 QLocalSocket 、QLocalServer 进行的
离线znlangel

只看该作者 3楼 发表于: 2019-06-21
回 hgx123 的帖子
hgx123:用的什么通信方式?SendMessage吗 (2019-06-20 15:04) 

是的 用的SendMessage
离线znlangel

只看该作者 4楼 发表于: 2019-06-21
回 圣域天子 的帖子
圣域天子:基本都是用 QLocalSocket 、QLocalServer 进行的 (2019-06-20 15:20) 

因为我想之后像这种通讯什么的都用C++来实现,Qt只做显示而已
离线20091001753

只看该作者 5楼 发表于: 2019-06-21
本地程序之间,用 SendMessage 通讯,是惯用的伎俩,方案肯定是没问题的。
只是为什么楼主的代码会偶尔失灵,这需要自己排查。
(づ ̄ 3 ̄)づ
离线hgx123

只看该作者 6楼 发表于: 2019-06-21
回 znlangel 的帖子
znlangel:是的 用的SendMessage (2019-06-21 09:43) 

是不是接收方没处理完?试一下SendMessageTimeout
https://blog.csdn.net/myworldbig/article/details/6407443
离线hgx123

只看该作者 7楼 发表于: 2019-06-26
快速回复
限100 字节
 
上一个 下一个