VB.NET Sendmessage/postmessage问题
我有一张表格,表格里面有一个面板 点击按钮1,我开始一个新的IE进程,我将IE.mainhandle设置为我的panel.handle,这样我的面板中就有了IE 现在我想发送一个鼠标点击IE。我该怎么办 我刚刚试过Sendmessage和Postmessage,但它不起作用VB.NET Sendmessage/postmessage问题,vb.net,internet-explorer,sendmessage,postmessage,Vb.net,Internet Explorer,Sendmessage,Postmessage,我有一张表格,表格里面有一个面板 点击按钮1,我开始一个新的IE进程,我将IE.mainhandle设置为我的panel.handle,这样我的面板中就有了IE 现在我想发送一个鼠标点击IE。我该怎么办 我刚刚试过Sendmessage和Postmessage,但它不起作用 Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal Hwnd As IntPtr, ByVal wMsg As UIn
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal Hwnd As IntPtr, ByVal wMsg As UInteger, ByVal wParam As UInteger, ByVal lParam As UInteger) As UInteger
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal Hwnd As IntPtr, ByVal wMsg As UInteger, ByVal wParam As UInteger, ByVal lParam As UInteger) As UInteger
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
Dim pnt = New Point(430, 290)
Dim x As Integer = 430
Dim y As Integer = 290
Dim p As Process = Process.GetProcessById(processID)
SetActiveWindow(p.MainWindowHandle)
PostMessage(p.MainWindowHandle, WM_LBUTTONDOWN, 1, MakeLParam(x, y))
PostMessage(p.MainWindowHandle, WM_LBUTTONUP, 0, MakeLParam(x, y))
SendMessage(p.MainWindowHandle, WM_LBUTTONDOWN, 0, MakeLong(x, y))
SendMessage(p.MainWindowHandle, WM_LBUTTONUP, 0, MakeLong(x, y))
End Sub
Private Shared Function MakeLParam(ByVal LoWord As Integer, ByVal HiWord As Integer) As IntPtr
Return New IntPtr((HiWord And &H10000) Or (LoWord And &HFFFF))
End Function
Public Function MakeLong(ByVal loWord As Integer, ByVal hiWord As Integer) As Integer
Return (hiWord - 1 << 16) Or (loWord + &HFFFF)
End Function
Private将函数PostMessage Lib“user32”别名“PostMessageA”(ByVal Hwnd作为IntPtr,ByVal wMsg作为UInteger,ByVal wParam作为UInteger,ByVal lParam作为UInteger)声明为UInteger
私有声明函数SendMessage Lib“user32”别名“SendMessageA”(ByVal Hwnd作为IntPtr,ByVal wMsg作为UInteger,ByVal wParam作为UInteger,ByVal lParam作为UInteger)作为UInteger
私有子按钮7\u单击(发送者作为对象,e作为事件参数)处理按钮7。单击
尺寸pnt=新点(430290)
尺寸x为整数=430
尺寸y为整数=290
Dim p As Process=Process.GetProcessById(processID)
SetActiveWindow(p.MainWindowHandle)
PostMessage(p.MainWindowHandle,WM_LBUTTONDOWN,1,MakeLParam(x,y))
PostMessage(p.MainWindowHandle,WM_LBUTTONUP,0,MakeLParam(x,y))
SendMessage(p.MainWindowHandle,WM_LBUTTONDOWN,0,MakeLong(x,y))
SendMessage(p.MainWindowHandle,WM_LBUTTONUP,0,MakeLong(x,y))
端接头
私有共享函数MakeLParam(ByVal LoWord作为整数,ByVal HiWord作为整数)作为IntPtr
返回新的IntPtr((HiWord和&H10000)或(LoWord和&HFFFF))
端函数
公共函数MakeLong(ByVal loWord为整数,ByVal hiWord为整数)为整数
返回(hiWord-1)