当前位置: 首页 > 知识库问答 >
问题:

SendMessage(hWnd, Msg, wParam, lParam)困难

卫浩瀚
2023-03-14

我试图让一个程序点击另一个程序上的按钮;我决定使用该功能:

SendMessage(hWndVariable, MsgVariable, wParamVariable, lParamVariable)

但是有一个问题。带有窗口句柄hWndVariable的窗口有3个按钮。我最初计划在SendMessage函数中使用以下参数:

SendMessage(hWndVariable, BN_CLICK, 0, 0);

问题:: 但是既然有三个按钮,程序怎么知道哪个按钮被点击了?哈哈,我猜我要么错过了什么,要么完全做错了什么。

共有2个答案

颜高朗
2023-03-14

BN_CLICKED是按钮发送到其父窗口的通知。您正在考虑BM_CLICK消息,您可以将其发送到按钮窗口以模拟单击它:

//SendMessage(hWndVariable, BM_CLICK, 0, 0);
SendMessage(hWndVariable, BM_CLICK, 0, 0);

为了使其工作,hWndVariable必须指向要单击的特定按钮,而不是像您当前所做的那样指向其父窗口。

包沈义
2023-03-14

发送消息(hWndVariable,BN_CLICK,0,0);

这就是您的问题所在。首先,您正在发送一条不存在的消息(您的意思是BN_CLICKED)。其次,您没有正确发送消息。

如前面问题的答案中所述,您需要获取按钮的ID。您可以使用间谍来执行此操作。

然后,根据BN\u点击的文档,您可以这样发送消息:

SendMessage(parentWindowhWnd, WM_COMMAND, (BN_CLICKED << 16) | BUTTONID, buttonhWnd);

正确填写值-parentWindowhWnd是包含按钮的窗口的HWND,BUTTONID是按钮的ID,buttonhWnd是按钮本身的HWND。

 类似资料:
  • 发送消息到窗口或控件(SendMessage 还会等待回复)。 PostMessage, Msg [, wParam, lParam, Control, WinTitle, WinText, ExcludeTitle, ExcludeText] SendMessage, Msg [, wParam, lParam, Control, WinTitle, WinText, ExcludeTitle,

  • Msg

    Msg Page 结果页通常来说可以认为进行一系列操作步骤后,作为流程结束的总结性页面。结果页的作用主要是告知用户操作处理结果以及必要的相关细节(可用于确认之前的操作是否有误)等信息;若该流程用于开启或关闭某些重要功能,可在结果页增加与该功能相关的描述性内容;除此之外,结果页也可以承载一些附加价值操作,例如提供抽奖、关注公众号等功能入口。 <div class="weui-msg"> <d

  • X-MSG-IM 是一套高可靠, 高性能, 可测量, 可扩展, 去中心化的即时通信基础设施 它将具有如下核心能力: 单人会话, 包括 end to end 加密通信 多人会话, 万人群组 聊天室 文件与对象存储  voip & pstn 客服系统 iot 接入 to c 公私有云部署 to b 公私有云部署 to b 多组织, 多地域部署与互通 开放联盟 open federation 系统特性:

  • 引用test.nsi的内容: ;Sendmessage简单例子 ;WWW.Dreams8.CoM ; !include "WinMessages.nsh" !include "LogicLib.nsh" name "Sendmessage简单例子" outfile "test.exe" page custom show leave reservefile "pagecustom.ini"

  • 问题内容: 我正在开发python应用程序,我想获取每个打开的窗口。我需要窗口的名称和来过滤列表,以管理一些特定的窗口,移动它们并调整其大小。 我试图自己查看信息,但没有获得正确的代码。我尝试使用此代码,但仅获得每个窗口的标题(很棒),但我也需要。 这里有一个错误: 问题答案: 你混了和。 在你所得到的是通过获得,是一个对象。这就是为什么不接受它。你应该把它传给 如果要使用,则可以直接使用pyth

  • 结果页通常来说可以认为进行一系列操作步骤后,作为流程结束的总结性页面。结果页的作用主要是告知用户操作处理结果以及必要的相关细节(可用于确认之前的操作是否有误)等信息;若该流程用于开启或关闭某些重要功能,可在结果页增加与该功能相关的描述性内容。 实现这个功能比较容易,使用微信 API wx.navigateTo()即可,mpvue框架中示例代码如下: <template> <div class=