FindWindowEx的应用
时间:2011-07-31
来源:互联网
想自动点击外部的一个软件的按钮,窗体能找到,用SPY++找出了按钮的名称,可是在代码上为什么找不到
VB code
VB code
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Any) As Long Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Const WM_LBUTTONDOWN = &H201 Const WM_LBUTTONUP = &H202 Private Sub Command1_Click() Dim tWnd1 As Long, tWnd2 As Long tWnd1 = FindWindow(vbNullString, "MySQL ODBC 3.51 Driver") If tWnd1 <> 0 Then '找到窗体 tWnd2 = FindWindowEx(tWnd1, 0, 0, "&Next >") If tWnd2 <> 0 Then '找到按钮 '走不到这里来 SendMessage tWnd2, bm_click, ByVal 0&, ByVal 0& End If End If End Sub
作者: yejian520 发布时间: 2011-07-31
我认为是:tWnd2 = FindWindowEx(tWnd1, 0, 0, "&Next >")的问题,具体问题出在:&Next >上,这个是控件的Caption属性,而非名称
作者: Veron_04 发布时间: 2011-07-31
引用楼主 yejian520 的回复:
想自动点击外部的一个软件的按钮,窗体能找到,用SPY++找出了按钮的名称,可是在代码上为什么找不到
VB code
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As ……
想自动点击外部的一个软件的按钮,窗体能找到,用SPY++找出了按钮的名称,可是在代码上为什么找不到
VB code
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As ……
具体怎么改
作者: yejian520 发布时间: 2011-07-31
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28