进程间通信啊

ningto.com 2011-08-03 02:40:26
比如我有两个进程:进程A与进程B, 怎样用进程B通知进程A,我是这样做的:
我自定义了一个消息WM_MYMESSAGE;
进程A中处理了WM_MYMESSAGE这个消息;
在进程B中,如按下按钮我就通知进程A我按下了这个按钮:
1>用FindWindow获取进程A的句柄;
2>SendMessage函数发送WM_MYMESSAGE消息到进程A。

上面这个方式用于一般的程序都是没问题的,但是现在我这边有些特殊进程A收不到这个
消息(至于什么原因我估计是这个程序的安全性比较高),有没有其他的方式让进程A收到这个消息
...全文
104 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
SEESEECN 2011-08-04
  • 打赏
  • 举报
回复
socket通信,管道,共享内存等,都可以发送消息
bfcode 2011-08-04
  • 打赏
  • 举报
回复
用命名管道来进程间通信啊
百事烟 2011-08-04
  • 打赏
  • 举报
回复
只能发送给对方某个窗体,通常用的是主窗体;

必须得到对方的某个窗体的句柄

两个程序都打开,查看自的hwnd是否一致
ningto.com 2011-08-03
  • 打赏
  • 举报
回复
发送成功了,但是收不到啊,没收到自然就不能处理了。
就是想问下有没有其他发送消息的方式?
yuanmoren 2011-08-03
  • 打赏
  • 举报
回复
[Quote=引用楼主 tujiaw 的回复:]
现在我这边有些特殊进程A收不到这个消息(至于什么原因我估计是这个程序的安全性比较高),
[/Quote]
你是给窗口句柄发送消息的吧!
可以检查下响应消息的窗口函数是不是接收消息的窗口。
yuanmoren 2011-08-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 yuanmoren 的回复:]

引用 2 楼 xxq123321 的回复:
普通消息不能跨进程吧,WM_COPYDATA才行
+1
[/Quote]
我错了,普通消息也是可以发送消息的。
xxq123321 2011-08-03
  • 打赏
  • 举报
回复
getmodulefilename 就是指是那个进程在调用你的dll了
yuanmoren 2011-08-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xxq123321 的回复:]
普通消息不能跨进程吧,WM_COPYDATA才行
另外进程间通信方式很多
像 共享内存 管道 邮槽 socket网络通信 等等
[/Quote]
+1
xxq123321 2011-08-03
  • 打赏
  • 举报
回复
普通消息不能跨进程吧,WM_COPYDATA才行
另外进程间通信方式很多
像 共享内存 管道 邮槽 socket网络通信 等等
ndy_w 2011-08-03
  • 打赏
  • 举报
回复
收不到还是没处理?A是第三方的?

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧