Something is wrong! :S -- Problem with VB6 code

Posts 1–14 of 14 · Page 1 of 1
Something is wrong! :S -- Problem with VB6 code
Is something wrong with adresses or am I doing something wrong??

OK.. VB6 making trainers:

First I enter this code in a new module:

Public Const PROCESS_ALL_ACCESS = &H1F0FFF
Dim f1holder As Integer
Dim timer_pos As Long
'API Declaration
Public Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hWnd As Long, lpdwProcessId As Long) As Long
Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Public Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal Classname As String, ByVal WindowName As String) As Long
Public Declare Function GetKeyPress Lib "user32" Alias "GetAsyncKeyState" (ByVal key As Long) As Integer
Public Declare Function ReadProcessMem Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
Public Function WriteAByte(gamewindowtext As String, address As Long, value As Byte)
Dim hWnd As Long
Dim pid As Long
Dim phandle As Long
hWnd = FindWindow(vbNullString, gamewindowtext)
If (hWnd = 0) Then
MsgBox "The Game Is Not Working", vbCritical, "Error"
End
Exit Function
End If
GetWindowThreadProcessId hWnd, pid
phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If (phandle = 0) Then
MsgBox "Can't get ProcessId", vbCritical, "Error"
Exit Function
End If
WriteProcessMemory phandle, address, value, 1, 0&
CloseHandle hProcess
End Function
Public Function WriteAnInt(gamewindowtext As String, address As Long, value As Integer)
Dim hWnd As Long
Dim pid As Long
Dim phandle As Long
hWnd = FindWindow(vbNullString, gamewindowtext)
If (hWnd = 0) Then
MsgBox "The Game Is Not Working", vbCritical, "Error"
End
End If
GetWindowThreadProcessId hWnd, pid
phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If (phandle = 0) Then
MsgBox "Can't get ProcessId", vbCritical, "Error"
Exit Function
End If
WriteProcessMemory phandle, address, value, 2, 0&
CloseHandle hProcess
End Function
Public Function WriteALong(gamewindowtext As String, address As Long, value As Long)
Dim hWnd As Long
Dim pid As Long
Dim phandle As Long
hWnd = FindWindow(vbNullString, gamewindowtext)
If (hWnd = 0) Then
MsgBox "The Game Is Not Working", vbCritical, "Error"
End
Exit Function
End If
GetWindowThreadProcessId hWnd, pid
phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If (phandle = 0) Then
MsgBox "Can't get ProcessId", vbCritical, "Error"
Exit Function
End If
WriteProcessMemory phandle, address, value, 4, 0&
CloseHandle hProcess
End Function
Public Function ReadAByte(gamewindowtext As String, address As Long, valbuffer As Byte)
Dim hWnd As Long
Dim pid As Long
Dim phandle As Long
hWnd = FindWindow(vbNullString, gamewindowtext)
If (hWnd = 0) Then
MsgBox "The Game Is Not Working", vbCritical, "Error"
End
Exit Function
End If
GetWindowThreadProcessId hWnd, pid
phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If (phandle = 0) Then
MsgBox "Can't get ProcessId", vbCritical, "Error"
Exit Function
End If
ReadProcessMem phandle, address, valbuffer, 1, 0&
CloseHandle hProcess
End Function
Public Function ReadAnInt(gamewindowtext As String, address As Long, valbuffer As Integer)
Dim hWnd As Long
Dim pid As Long
Dim phandle As Long
hWnd = FindWindow(vbNullString, gamewindowtext)
If (hWnd = 0) Then
MsgBox "The Game Is Not Working", vbCritical, "Error"
End
Exit Function
End If
GetWindowThreadProcessId hWnd, pid
phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If (phandle = 0) Then
MsgBox "Can't get ProcessId", vbCritical, "Error"
Exit Function
End If
ReadProcessMem phandle, address, valbuffer, 2, 0&
CloseHandle hProcess
End Function
Public Function ReadALong(gamewindowtext As String, address As Long, valbuffer As Long)
Dim hWnd As Long
Dim pid As Long
Dim phandle As Long
hWnd = FindWindow(vbNullString, gamewindowtext)
If (hWnd = 0) Then
MsgBox "The Game Is Not Working", vbCritical, "Error"
End
Exit Function
End If
GetWindowThreadProcessId hWnd, pid
phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If (phandle = 0) Then
MsgBox "Can't get ProcessId", vbCritical, "Error"
Exit Function
End If
ReadProcessMem phandle, address, valbuffer, 4, 0&
CloseHandle hProcess
End Function
Public Function ReadAFloat(gamewindowtext As String, address As Long, valbuffer As Single)
Dim hWnd As Long
Dim pid As Long
Dim phandle As Long
hWnd = FindWindow(vbNullString, gamewindowtext)
If (hWnd = 0) Then
MsgBox "The Game Is Not Working", vbCritical, "Error"
End
Exit Function
End If
GetWindowThreadProcessId hWnd, pid
phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If (phandle = 0) Then
MsgBox "Can't get ProcessId", vbCritical, "Error"
Exit Function
End If
ReadProcessMem phandle, address, valbuffer, 4, 0&
CloseHandle hProcess
End Function

Public Function WriteAFloat(gamewindowtext As String, address As Long, value As Single)
Dim hWnd As Long
Dim pid As Long
Dim phandle As Long
hWnd = FindWindow(vbNullString, gamewindowtext)
If (hWnd = 0) Then
MsgBox "The Game Is Not Working", vbCritical, "Error"
End
Exit Function
End If
GetWindowThreadProcessId hWnd, pid
phandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If (phandle = 0) Then
MsgBox "Can't get ProcessId", vbCritical, "Error"
Exit Function
End If
WriteProcessMemory phandle, address, value, 4, 0&
CloseHandle hProcess
End Function

Than I enter this in the timer:

Call WriteALong("WarRock", &H7DB120, 1120403456)

And than the button:

Timer1.Interval = 1
Any errors? And the address is 7EB66C?
the code are ok, it must work, if it don`t work, try another module code, maby there`s something wrong
Quote Originally Posted by juppeli View Post
Any errors? And the address is 7EB66C?
No there is no errors. I make hack with no errors, but when i go in game and activate it, IT doesnt do anything. An yes i tried that adress too!
Well try to add timer interval straight to 1 (without buttons) and give new report.
Quote Originally Posted by juppeli View Post
Well try to add timer interval straight to 1 (without buttons) and give new report.
???

How can i activate the hack than, if it wont have a button.

LOL
with hotkey!?!?

Private Sub Timer1_Timer()
If GetKeyPress(vbKeyControl) And GetKeyPress(vbKeyS) Then
If Timer2.Interval = 0 Then Timer2.Interval = 1
Else: Timer2.Interval = 0
End If
End Sub

Privat Sub Timer2_Timer()
Call WriteALong("WarRock", &HADRESS, VALUE)
End Sub

:P
Quote Originally Posted by ZeaS View Post
with hotkey!?!?

Private Sub Timer1_Timer()
If GetKeyPress(vbKeyControl) And GetKeyPress(vbKeyS) Then
If Timer2.Interval = 0 Then Timer2.Interval = 1
Else: Timer2.Interval = 0
End If
End Sub

Privat Sub Timer2_Timer()
Call WriteALong("WarRock", &HADRESS, VALUE)
End Sub

:P
Mybe that will work. I just dont understaind what hotkeys will be set than?
click your timer, and at right you see properties. Scroll down so much as you see interval and replace 0 with 1. And make hotkeys after you made basics.
For stamina, I think the value changed. It starts with a 4 now I think. Atleast for me it does.
Quote Originally Posted by juppeli View Post
click your timer, and at right you see properties. Scroll down so much as you see interval and replace 0 with 1. And make hotkeys after you made basics.
If i do that what will happen?

Only interval will change?
Quote Originally Posted by Stranger00 View Post
For stamina, I think the value changed. It starts with a 4 now I think. Atleast for me it does.
But shouldnt it do something with stamina anyway (eg decrease it)?






Yes, timer goes on automatically when you start it.
No no everything is cool with stamina.

I figure it out now. I fixed the problem. My next problem is i dont know how to make a hack with hotkey??
Go to you form1(code) and scroll code so up you can, and add this to above all else
Code:
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
And then, you can use hotkeys only with timer, and you need to keep it's interval always 1.

Code:
If GetAsyncKeyState(vbKeyNumpad1) Then
    Dim value As Long
    Dim value1 As Long
    Call ReadALong("Warrock", &terminator, value)
    value1 = value + &H9955
    Call WriteALong("Warrock", value1, 0)
End if
End Sub
This is what your timer got.
"If GetAsyncKeyState(vbKeyNumpad1)" This is you hotkey command, it's currently numpad 1, if you want it eg. to h, its like :
"If GetAsyncKeyState(vbKeyH)"
Posts 1–14 of 14 · Page 1 of 1
This thread is closed for replies.

Similar Threads

Tags for this Thread

None

Talk with us