如何更改 Python 中内存地址的值?

How can I change the value of an memory-address in Python?

我当前的代码没有显示错误消息但也不起作用:

py import time
from ReadWriteMemory import ReadWriteMemory

process = ReadWriteMemory.get_process_by_name("Tutorial-i386.exe")
process.open()

address = 0x0195A810
health = process.get_pointer(address, offsets=[0])

while True:
    value = process.read(health)
    print(value)
    time.sleep(0.5)

您可以尝试使用ctypes库。试试这个,

import ctypes

data = (ctypes.c_char).from_address(0x0195A810)

您可以读取并赋值给数据变量。确保 select 类型正确。我在这个例子中使用了 char。不确定那里存储了什么样的价值。您可以在下面的 link 中查看可用的类型。

你也可以用这个得到list/array个内存地址,

dataarr = (ctypes.c_char*offset).from_address(0x0195A810)

您可以在此处查看文档,

https://docs.python.org/3/library/ctypes.html