2009-11-25 2 views

Antwort

15

Ich habe nichts in den Standard-Python-Bibliotheken sehen, aber ich fand ein Beispiel unter Verwendung von ctypes, wie Sie auf einer anderen Seite vorgeschlagen:

from ctypes import * 
from ctypes.wintypes import * 

OpenProcess = windll.kernel32.OpenProcess 
ReadProcessMemory = windll.kernel32.ReadProcessMemory 
CloseHandle = windll.kernel32.CloseHandle 

PROCESS_ALL_ACCESS = 0x1F0FFF 

pid = 4044 # I assume you have this from somewhere. 
address = 0x1000000 # Likewise; for illustration I'll get the .exe header. 

buffer = c_char_p("The data goes here") 
bufferSize = len(buffer.value) 
bytesRead = c_ulong(0) 

processHandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid) 
if ReadProcessMemory(processHandle, address, buffer, bufferSize, byref(bytesRead)): 
    print "Success:", buffer 
else: 
    print "Failed." 

CloseHandle(processHandle) 
0

Ja, ctypes (oder win32all) und ReadProcessMemory sind genau die Art und Weise zu gehen. Waren Sie auf der Suche nach etwas Besonderem? Was, insbesondere?

+0

vielleicht möchte er ArtMoney Klon tun: P – YOU

+0

Ich vermute, ich suchte nach etwas in den Python-Bibliotheken, die im Wesentlichen ein Wrapper dafür in einem Versuch war, ctypes zu vermeiden. Danke für die Information! –

Verwandte Themen