要求:
第一步:由程序1启动程序2,
第二步:关键,从程序1自动点击程序2中按钮(无任程序2是最大化、最小化还是隐藏式),请问如何写代码,谢谢
程序1:
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Shell("程序2.exe", AppWinStyle.NormalFocus)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
MsgBox("请教高手如何实现?")
End Sub
End Class
程序2:
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MsgBox("ok")
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Me.Close()
End Sub
End Class
SendMessage Syscommand
首先你要找到那个按钮的句柄,可以用枚举窗口去找,api函数里有
先FindWindow()找到被打开程序的主窗口,再找到枚举他的子窗口找到按钮,再SendMessage()。
用spy++查看一下程序对应的按钮等信息,然后通过SendMessage发送对应按钮消息。
谢谢高手指点,本人愚昧,在vb2008环境下试了,就这个都不通过:
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal ByValwMsg As Long, ByVal wParam As Long, ByVal lParam As Any) As Long
报Any无效,因此我搭建了vb2008下程序框架,望高手完善程序1按钮代码,实现点击程序2按钮的功能
我的邮箱:frownies@139.com,如有成功,我定将贴出共享,谢谢
http://115.com/lb/5lbarqrg2of4#
程序框架,能否帮忙完善程序1按钮,实现点击程序2的功能.zip
115礼包码:5lbarqrg2of4