安徽彩票大奖 欧洲百万乐透大奖 七星彩17049规律大奖 双色球中大奖领奖过程 3d近期中大奖故事 广州番禺中福彩大奖的 鸡男注定会中大奖 2016江苏彩民中大奖 趣彩网大奖网黑平台 大乐透4.97亿大奖 霍邱一彩民6元中双色球547万大奖 双色球黑龙江中大奖图 体育彩票中大奖名单 什么样的人能中大奖 彩票大奖作假

VBA调用Sendmessage或PostMessage来模拟鼠标单击按钮事件

2017-09-10 18:30:00
zstmtony
原创
2233

注意,PostMessage是马上返回,而SendMessage则会等待执?#22411;?#25104;后才返回

确实遇到过用sendMessage发送消息时有时候写的软件卡住了  用PostMessage就可以  


'用类似的方法可以实现类似游戏外挂或修改器的软件,或其它模拟鼠标功能的软件 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
'鼠标按下
Const WM_LBUTTONDOWN = &H201
'鼠标弹出
Const WM_LBUTTONUP = &H202
'鼠标双击
Const WM_COMMAND = &H203
 
Private Sub Command1_Click()
Dim lngHWnd1 As Long, lngHWnd2 As Long
 
lngHWnd1 = FindWindow(vbNullString, "你要控制窗体的标题")
  If lngHWnd1 <> 0 Then
  lngHWnd2 = FindWindowEx(lngHWnd1, 0, vbNullString, "里面窗体或控件的标题")
   
  If lngHWnd2 <> 0 Then
  SendMessage lngHWnd2, WM_LBUTTONDOWN, 0&, 0&
  SendMessage lngHWnd2, WM_LBUTTONUP, 0&, 0&
   
  End If
  Else
  lngHWnd2 = 0
  End If
End Sub
分享
? 1999-2019 Office交流网?? 中山市天鸣科技发展有限公司 粤ICP备10043721号-5 SQL查询:19
内存占用:7.75MB
PHP 执行时间:0.14
双色球大奖2000年
安徽彩票大奖 欧洲百万乐透大奖 七星彩17049规律大奖 双色球中大奖领奖过程 3d近期中大奖故事 广州番禺中福彩大奖的 鸡男注定会中大奖 2016江苏彩民中大奖 趣彩网大奖网黑平台 大乐透4.97亿大奖 霍邱一彩民6元中双色球547万大奖 双色球黑龙江中大奖图 体育彩票中大奖名单 什么样的人能中大奖 彩票大奖作假