VB做了个刷分器,如何对打开的两个游戏进行不同操作

来源:百度知道 编辑:UC知道 时间:2024/09/27 08:16:17
我打开了两个相同的游戏(也就是双开游戏)用FindWindow先取得了游戏窗口的句柄 用PostMessage 对游戏发送按键 可是两个游戏只能发送相同的按键
比如我要对第一个发送HOME键 对第二个发送END键 这样该如何操作呢 要用到FindWindowEx这个函数吗 我用EnumWindows函数列举出来了两个函数的进程 可是不知道下一步该怎么做 比如说这个游戏叫做 “QQ飞行岛”请教大家了 最好给出完整代码 如果满意我会追加分数

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
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Sub Command1_Click()
Dim wnd As Long
wnd = FindWindow(vbNullString, "无标题 - Notepad2") '获取窗口句柄
PostMessage wnd, &H100, 112, 0 '发送按键 F1的键盘扫描码为112
End Sub

注意,这个只能发送单个按键,不能发送组合键,这是我昨天才写的,到现在发现你是第三个要的人了(本来给他写的那个还不满意,就是不能发送组合键,他要组合键,我没法),我是用的记事本测试的

20分想获得这种源码?
我建议你开200分吧

好象是要得到游戏窗口的句柄的窗口代码才行

因为打开了两个相同的游戏,你取得的游戏窗口的句柄的名称也是相同的
所以,只能发送相同的按键
要不你就必须修改一个游戏窗口的句柄的名称才行。