如何使用sendmessage使系统菜单响应

fangbing007 2014-09-17 02:54:00
如题:进程A 如何使用sendmessage使得进程B(图形)的系统菜单响应。类似于alt+D

问题1:如何模拟ALT+D的操作
问题2:如何获取到进程B的系统菜单的子菜单项 假设B的子菜单1为B1,B1下的子菜单为B2,如何使得B2能够响应。
勿使用key_board函数 B为后台隐藏界面
...全文
277 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2014-10-24
  • 打赏
  • 举报
回复
您好 我是本版版主 此帖已多日无人关注 请您及时结帖 如您认为问题没有解决可按无满意结帖处理 另外本版设置了疑难问题汇总帖 并已在版面置顶 相关规定其帖子中有说明 您可以根据规定提交您帖子的链接 如您目前不想结帖只需回帖说明 我们会删除此结帖通知 见此回复三日内无回应 我们将强制结帖 相关规定详见界面界面版关于版主结帖工作的具体办法
捕鲸叉 2014-09-24
  • 打赏
  • 举报
回复
WM_SYSCOMMAND
傻X 2014-09-19
  • 打赏
  • 举报
回复
引用 6 楼 yjmshpz 的回复:
[quote=引用 4 楼 CometNet 的回复:] ::SendMessage(B程序窗口句柄,WM_COMMAND,菜单ID,NULL)
怎么获取B程序的窗口句柄?[/quote] FindWindow 和EnumWindow都可以尝试。。
副组长 2014-09-19
  • 打赏
  • 举报
回复
进程B的代码是不能修改那我白说了。
fangbing007 2014-09-18
  • 打赏
  • 举报
回复
引用 3 楼 tiger9991 的回复:
可以考虑WM_COPY的消息。。另外进程B是不是不能修改代码?
进程B的代码是不能修改
邓学彬 2014-09-17
  • 打赏
  • 举报
回复
::SendMessage(B程序窗口句柄,WM_COMMAND,菜单ID,NULL)
傻X 2014-09-17
  • 打赏
  • 举报
回复
可以考虑WM_COPY的消息。。另外进程B是不是不能修改代码?
zgl7903 2014-09-17
  • 打赏
  • 举报
回复
菜单消息 一般都是转化成 WM_COMMAND 或 WM_SYSCOMMAND 消息的, 找到窗口 发送响应消息
副组长 2014-09-17
  • 打赏
  • 举报
回复
要是我就用Socket在进程间通信,不但在本机进程间可以用,和其它计算机通信也方便,虽然开始麻烦点,但是这东西做一次就熟了,以后用处很多。注意就是单机的时候也需要有本地连接。其它还有命名管道等,如果你习惯用也可以。 ATL+D可以在A进程响应键盘事件,发现ATL+D就通过SOCKET向B进程发送一个自定义的消息串,B收到消息串不是就知道A进程按下了ATL+D? 不要试图在A进程找B的菜单,那不麻烦死了。B进程收到A进程ATL+D按下的消息串后(比方在OnReceive),直接就去找B2的命令响应函数不就可以了。
schlafenhamster 2014-09-17
  • 打赏
  • 举报
回复
FindWindow
yjmshpz 2014-09-17
  • 打赏
  • 举报
回复
引用 4 楼 CometNet 的回复:
::SendMessage(B程序窗口句柄,WM_COMMAND,菜单ID,NULL)
怎么获取B程序的窗口句柄?

15,979

社区成员

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

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