天龙八部辅助打怪工具(VB模拟按键)

2009-12-18 21:27:53 1 4718
某人想一边游戏一边看小说,总是按键点鼠标打怪太累了;用了下按键精灵效果还行,不过一来找按键精灵的免费版本太麻烦了,二来怕游戏识别进程有按键精灵而被封,于是决定帮她用vb写个简单的按键挂。

百度了下VB模拟键盘按键,一般三种方法:局部模拟、全局模拟以及驱动模拟,都是顾名思义的,全局模拟最为通用,所以窗体都发送了,不过在天龙八部没测试成功,改成驱动的,但测试时没加载的了WinIo.dll,最终我才尝试PostMessage,我一直以为这个方法被封了的,结果却没有,于是小辅助工具就可以诞生了。

选怪快捷键设置为:F2,打怪快捷键设置为F1,测试通过。

源码:
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds 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 GameTitle As String = "天龙八部 1.10.0600 (南部电信二区:烟雨轩)" '这里修改成自己所在的区服
Dim Status As Boolean ' 挂机状态
Const WM_KEYDOWN = &H100
Const WM_KEYUP = &H101
Const VK_F1 = &H70
Const VK_F2 = &H71

Sub SendKey(KStr As String)
DoEvents
Dim hwnd As Long ' 储存 FindWindow 函数返回的句柄
hwnd = FindWindow(vbNullString, GameTitle)
Select Case KStr
Case "F1" '游戏中设置为F1为打怪快捷键
PostMessage hwnd, WM_KEYDOWN, VK_F1, 0&
PostMessage hwnd, WM_KEYUP, VK_F1, 0&
Case "F2" '游戏中设置为F2为选怪快捷键
PostMessage hwnd, WM_KEYDOWN, VK_F2, 0&
PostMessage hwnd, WM_KEYUP, VK_F2, 0&
End Select
End Sub

Sub Delay(Tnum As Long)
Sleep Tnum
End Sub

'判断游戏是否正在运行
Function IsRun() As Boolean
IsRun = False
Dim hwnd As Long '储存 FindWindow 函数返回的句柄
hwnd = FindWindow(vbNullString, GameTitle)
If hwnd = 0 Then
IsRun = False
Else
IsRun = True
End If
End Function

'开始按钮
Private Sub Command1_Click()
If IsRun = False Then
MsgBox "游戏没有运行,让我怎么挂?", 16
Exit Sub
Else
MsgBox "开始挂机,设置打怪时间为" & Text1.Text & "秒!"
End If
Status = True
GuaJiStatus.Caption = "挂机中"
End Sub

'停止按钮
Private Sub Command2_Click()
Status = False
GuaJiStatus.Caption = "休息中"
End Sub

Private Sub Form_Load()
Status = False
End Sub

Private Sub Form_Unload(Cancel As Integer)
End
End Sub

'Timer控件
Private Sub TimerGuaJi_Timer()
DoEvents
If Status = False Then Exit Sub
SendKey ("F2")
Delay 100
SendKey ("F1")
Delay Text1.Text * 1000 'Text1.Text为设置的打怪间隔
End Sub
截图:

关于作者

oldjun132篇文章575篇回复

评论1次

要评论?请先  登录  或  注册
  • 1楼
    2017-5-12 13:37

    PostMessage 这种模拟发送键盘按键 一般来说 这种辅助我个人感觉 没啥用·····除非是找call这种····· ------------------------------------------------------------------------------------------ 卧槽 为什么 是 09年的帖子····09年的帖子还会出现在首页·····神奇·····