已知对话框的句柄,如何获得其按钮的句柄并发送消息

已知对话框的句柄,如何获得其按钮的句柄并发送消息,第1张

------解决方案--------------------------------------------------------

------解决方案--------------------------------------------------------

同进程的直接获得资源编号就可以了,获得GetDlgItem(资源编号)-GetSafeHwnd()就可以获取句柄了,然后SendMessage(句柄,WM_LBUTTONDOWN,NULL,NULL);

如果调用了,messagebox,必须保证你没有按 yesno将那个对话框关闭才能找到那个“是”按钮

先找到对话框的句柄,通过 FindWindow(NULL,"1")。查找或者,根据类名,使用spy++就能看到了。或者 GetWindow 枚举也可以。

然后通过 GetWindow( hdlgWnd, GW_CHILD);获取对话框的第一个子控件,再使用 GetWindowText 获得这个子控件的名称看是否是“是”,或者 GetDlgCtrlID 看这个字控件ID是否 IDYES

如果不是 ,就用 GetWindow(,GW_HWNDNEXT),或者下一个按钮对比

截获消息难哦,要用hook

获取句柄还是容易的

用getcursorpos和windowfrompoint就能实现

======================

要监听消息也要用hook,你可以去参考syp++

private

declare

function

getcursorpos

lib

"user32"

(lppoint

as

any)

as

long

private

declare

function

windowfrompoint

lib

"user32"

(byval

xpoint

as

long,

byval

ypoint

as

long)

as

long

public

function

hwndfromcusror()

as

long

dim

a(1)

as

long

getcursorpos

a(0)

hwndfromcusror

=

windowfrompoint(a(0),

a(1))

end

function

以上就是关于已知对话框的句柄,如何获得其按钮的句柄并发送消息全部的内容,包括:已知对话框的句柄,如何获得其按钮的句柄并发送消息、API中获得按钮句柄、VB 获取其他程序某个按钮的句柄,实现点击 *** 作等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9509287.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存