⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form1.frm

📁 能显示人物信息武林外传VB,初初学者可以看懂
💻 FRM
字号:
VERSION 5.00
Begin VB.Form Form1 
   Caption         =   "Form1"
   ClientHeight    =   7305
   ClientLeft      =   60
   ClientTop       =   450
   ClientWidth     =   10335
   LinkTopic       =   "Form1"
   ScaleHeight     =   7305
   ScaleWidth      =   10335
   StartUpPosition =   3  '窗口缺省
   Begin VB.TextBox txt_gwhp 
      Height          =   495
      Left            =   1560
      TabIndex        =   13
      Text            =   "Text1"
      Top             =   2880
      Width           =   2055
   End
   Begin VB.Timer TimerAttack 
      Enabled         =   0   'False
      Interval        =   500
      Left            =   6480
      Top             =   840
   End
   Begin VB.CommandButton Command1 
      Caption         =   "开始"
      Height          =   615
      Left            =   5280
      TabIndex        =   12
      Top             =   5760
      Width           =   2175
   End
   Begin VB.Timer addhp 
      Enabled         =   0   'False
      Interval        =   500
      Left            =   5640
      Top             =   720
   End
   Begin VB.TextBox txt_money_bag 
      Height          =   495
      Left            =   1560
      TabIndex        =   6
      Text            =   "Text1"
      Top             =   3480
      Width           =   4335
   End
   Begin VB.Timer Timer1 
      Interval        =   1000
      Left            =   4800
      Top             =   720
   End
   Begin VB.TextBox txt_level 
      Height          =   500
      Left            =   1560
      TabIndex        =   2
      Text            =   "Text1"
      Top             =   2160
      Width           =   2000
   End
   Begin VB.TextBox txt_mp 
      Height          =   500
      Left            =   1560
      TabIndex        =   1
      Text            =   "Text1"
      Top             =   1440
      Width           =   2000
   End
   Begin VB.TextBox txt_hp 
      Height          =   500
      Left            =   1560
      TabIndex        =   0
      Text            =   "Text1"
      Top             =   840
      Width           =   2000
   End
   Begin VB.Label Label5 
      Caption         =   "金钱:"
      Height          =   375
      Left            =   720
      TabIndex        =   11
      Top             =   3600
      Width           =   495
   End
   Begin VB.Label Label3 
      Caption         =   "等级:"
      Height          =   375
      Left            =   720
      TabIndex        =   10
      Top             =   2280
      Width           =   375
   End
   Begin VB.Label Label2 
      Caption         =   "蓝:"
      Height          =   375
      Left            =   720
      TabIndex        =   9
      Top             =   1560
      Width           =   495
   End
   Begin VB.Label Label1 
      Caption         =   "血:"
      Height          =   375
      Left            =   720
      TabIndex        =   8
      Top             =   840
      Width           =   495
   End
   Begin VB.Label lb_fuzhu 
      Caption         =   "Label1"
      Height          =   735
      Left            =   4800
      TabIndex        =   7
      Top             =   4200
      Width           =   2775
   End
   Begin VB.Label lb_pro 
      Caption         =   "Label3"
      Height          =   495
      Left            =   1440
      TabIndex        =   5
      Top             =   6240
      Width           =   2055
   End
   Begin VB.Label lb_pid 
      Caption         =   "Label2"
      Height          =   495
      Left            =   1320
      TabIndex        =   4
      Top             =   5520
      Width           =   2055
   End
   Begin VB.Label lb_hwnd 
      Caption         =   "Label1"
      Height          =   495
      Left            =   1320
      TabIndex        =   3
      Top             =   4800
      Width           =   1815
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'程序初始化
Private Sub Form_Initialize()
  Dim hWnd As Long
  Dim pid As Long
  Dim hProcess As Long
  Dim begin As Boolean
  begin = True


  hWnd = FindWindow("QElementClient Window", "Element Client")
  If hWnd = 0 Then
    MsgBox "未启动游戏", vbOKOnly, "提示"
    Exit Sub
  End If
  GetWindowThreadProcessId hWnd, pid   '获取进程标识符

  If pid = 0 Then
    MsgBox "读不了ID", vbOKOnly, "提示"
    Exit Sub
  End If
  
  '将进程标识符做为参数,返回目标进程PID的句柄,得到此句柄后
  '即可对目标进行读写操,PROCESS_ALL_ACCESS表示完全控制,权限最大
  hProcess = OpenProcess(PROCESS_ALL_ACCESS, 0, pid)
  If hProcess = 0 Then
    MsgBox "不能打开进程", vbOKOnly, "提示"
    Exit Sub
  End If
  lb_hwnd.Caption = lb_hwnd.Caption & hWnd
  lb_pid.Caption = lb_pid.Caption & pid
  lb_pro.Caption = lb_pro.Caption & hProcess
  '定义1级指针地址
  buffer_1 = &H95E81C
  buffer_2 = ncnr(buffer_1) + &H24
  buffer_3 = ncnr(buffer_2)
   CloseHandle hProcess
End Sub




'该时钟用来实时显示人物属性
Private Sub Timer1_Timer()

Dim gwid As Long

'加上偏移量读取数值,红&H254,蓝&H258,经验&H25C,等级&H24C,
'蓝上限&H270,红上限&H26C,身上金钱&H2D4,辅助技能&H118
hp = ncnr(buffer_3 + &H25C)
mp = ncnr(buffer_3 + &H260)
hpmax = ncnr(buffer_3 + &H274)
mpmax = ncnr(buffer_3 + &H278)
level = ncnr(buffer_3 + &H250)
money_bag = ncnr(buffer_3 + 724)
fuzhu = ncnr(buffer_3 + 280)
gwid = ncnr(buffer_3 + &H7E4)
gwhp = ncnr(buffer_3 + &H134)
gwmaxhp = ncnr(buffer_3 + &H14C)

txt_hp.Text = hp & "/" & hpmax
txt_mp.Text = mp & "/" & mpmax
txt_level.Text = level
txt_gwhp.Text = gwid

Dim money_jin As Long
Dim money_yin As Long
Dim money_tong As Long
money_tong = money_bag Mod 100
money_jin = Int(money_bag / 10000)
money_yin = (money_bag - money_jin * 10000 - money_tong) / 100
txt_money_bag.Text = money_jin & "金" & money_yin & "银" & money_tong & "铜"
If fuzhu = 0 Then
lb_fuzhu.Caption = "没有启动辅助技能"
Else
lb_fuzhu.Caption = "已经启动辅助技能"
End If
End Sub

Private Sub addhp_Timer()



If hp / hpmax <= 0.7 And gwid = 0 Then

begin = False

MyKeyDown VK_3
MyKeyUp VK_3
Sleep (500)

If hp = hpmax Then
begin = True
End If
End If

End Sub

Private Sub Command1_Click()
If Command1.Caption = "开始" Then '按下标签为“开始”的按钮,激活TimerAdd并改变标签为“停止”
addhp.Enabled = True
TimerAttack.Enabled = True
Command1.Caption = "停止"
ElseIf Command1.Caption = "停止" Then '刚好和上面相反
addhp.Enabled = False
TimerAttack.Enabled = False
Command1.Caption = "开始"
End If
End Sub
Sub Call_TAB()
Dim asm As New clsasm
With asm
    .Pushad
    .Mov_EAX_DWORD_Ptr &H95E81C
    .Mov_EAX_DWORD_Ptr_EAX_Add &H24
    .Mov_ECX_EAX
    .Push 0
      .Mov_EBX &HE8954ADB
    .Call_EBX
    .Popad
    .ret
End With
asm.Run_ASM pid
End Sub


Private Sub TimerAttack_Timer() '攻击计时器



If begin = True Then

        If gwid <> 0 Then
            MyKeyDown VK_1
            MyKeyUp VK_1
            Sleep (500)
        Else
            
            MyKeyDown VK_TAB
            MyKeyUp VK_TAB
            Sleep (300)
            MyKeyDown VK_2
            MyKeyUp VK_2
            Sleep (1000)
            MyKeyDown VK_1
            MyKeyUp VK_1
            DoEvents
            Sleep (500)
            
        End If

End If

End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -