香港专业教育学院的baseaddress得到了下面的代码:找到一个正在运行的进程
import subprocess
from ctypes import *
#-Part where I get the PID and declare all variables-#
OpenProcess = windll.kernel32.OpenProcess
ReadProcessMemory = windll.kernel32.ReadProcessMemory
processHandle = OpenProcess(PROCESS_ALL_ACCESS, False, PID)
ReadProcessMemory(processHandle, address, buffer, bufferSize, byref(bytesRead))
所有这一切工作完美无瑕,但由于一些工艺采用的是所谓的BaseAddress
或StartAddress
。在我的情况下,这个BaseAddress的大小是随机的。 作为建议here我尝试使用下面的代码:
BaseAddress = win32api.GetModuleHandle(None)
它所做的就是一遍又一遍地给相同的十六进制值再次,即使我肯定知道我的BaseAddress已经改变。从展示什么进出口寻找(其中左边部分是baseaddress)链接线
截图:
曾经找出回答你的问题?我正在寻找答案。 –
@DreamLane没有,还没有找到任何东西。决定改用c#来代替。这样的耻辱,因为我爱蟒蛇。 – Willy
我一直在辩论改用C++或C#。 Python虽然对于原型设计来说太棒了... –