使用python读写内存–植物大战僵尸为例 pymem和tkinter

废话不多,直接上源代码

import tkinter
import pymem
from tkinter import *


process_pvz = pymem.Pymem('PlantsVsZombies.exe')
module_pvz = pymem.process.module_from_name(process_pvz.process_handle, 'PlantsVsZombies.exe')
root_address = pymem.memory.read_int(process_pvz.process_handle, module_pvz.lpBaseOfDll + 0x2A9EC0)
print(hex(root_address))

window_main = tkinter.Tk()
window_main.title('植物大战僵尸阳光修改')
window_main.geometry('300x130')

value_sun = StringVar()

def open_(numble):
    Bmp_address = pymem.memory.read_int(process_pvz.process_handle,root_address + 0x768)
    print(Bmp_address)
    process_pvz.write_int(Bmp_address+ 0x5560, int(numble))

def callback():
    numble = value_sun.get()
    if numble != '':
        open_(int(numble))

entry_main = tkinter.Entry(textvariable=value_sun)
entry_main.pack()

button_main = tkinter.Button(window_main, text="OPEN", command=callback)
button_main.pack()

window_main.mainloop()

以上代码仅支持

静态地址:PlantsVsZombies.exe + 2A9F38
一级偏移:768
二级偏移:5560

此为运行截图
在这里插入图片描述

修改效果为
在这里插入图片描述

在这里插入图片描述

有问题可以留言

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐