Kikou_du_29
Messages postés12Date d'inscriptionjeudi 7 avril 2005StatutMembreDernière intervention22 décembre 2008
-
30 avril 2008 à 19:22
Kikou_du_29
Messages postés12Date d'inscriptionjeudi 7 avril 2005StatutMembreDernière intervention22 décembre 2008
-
1 mai 2008 à 18:51
Bonjour , j'esai actuellement de récupérer la valeur d'un offset dans un processus , malheuresement sur n'importe quel process il me trouve toujous la même chose .
Voici un extrait du code :
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Integer, ByVal bInheritHandle As Integer, ByVal dwProcessId As Integer) As Integer
Private Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
Private Declare Function ReadProcessMemory Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Integer) As Integer
Const PROCESS_ALL_ACCESS = &H1F0FFF
Plus haut les déclarations , maintenant mon code actif permettant de tester :
If (TextBox2.Text = "test") Then
Dim Address As Integer, vBuffer As Long
Dim enc As New System.Text.ASCIIEncoding
Dim myProcesses As Process() = Process.GetProcessesByName("war3")
Dim processHandle As IntPtr = OpenProcess(PROCESS_ALL_ACCESS, 0, myProcesses(0).Id)
Address = 400
ReadProcessMemory(processHandle, Address, vBuffer, 4, 0)
If (vBuffer = 0) Then
Me.text = "Rien du tout"
else
Me.Text = vBuffer & "/" & Address End If
CloseHandle(processHandle)
End If
J'essai juste de récupérer la valeur d'un offset précis , celui étant stable et ne bougeant pas , je suis parti du principe que l'offset fini toujours pas 190 en hexa donc 400 de deca .