1.这个外挂主要基于单机游戏. 大部分网游不适用
2.也不推荐使用网游外挂

jspvz.com/download.htm   植物大战僵尸游戏下载地址

"""
项目名称:  逆向修改
项目描述:  通过windows编程,修改游戏程序里的内存数据
项目环境:  vsocde && pywin32
作者所属:  Steven

找到阳光数据十六进制内存地址  0x33556A18
"""

# 0.准备外挂工具(pywin32)
import win32gui as gui  #  窗口
import win32con as con  # control控制权限
import win32process as pro  # 进程 - 正在运行的程序
import win32api as api  # windows系统里的综合工具.里面有很多工具
import ctypes  #  呼叫C语言

# 1.找到要修改的程序 
# 通过名字找到窗口.   类型不知道,就填0
handle = gui.FindWindow(0,'Plants vs. Zombies')

# 2.找到阳光所在的地址
# 如果只是通过名字找程序,可能有同名程序.所以要找到程序的身份证 --> pid
pid = pro.GetWindowThreadProcessId(handle)[1]

# 3.提升操作权限
# 打开进程(1.权限等级 2.是否影响其他数据 3.打开哪个进程) PROCESS_ALL_ACCESS 权限全开
# game就是被提升过操作权限的程序
game = api.OpenProcess(con.PROCESS_ALL_ACCESS,False,pid)

# 由于python不能直接操作内存. 因此要借助C语言来导入一个能修改内存的工具
# 这个工具在C盘. 叫kernel32.dll  是个核心文件,不要乱碰它/文件夹里的内容
k32 = ctypes.windll.LoadLibrary(r'C:\Windows\System32\kernel32.dll')

# 4.修改数据
# K32.写入内存数据(1.要修改的程序 2.内存地址 3.要修改的值 4.数据类型/大小)
# 电脑底层不能直接识别py数据. 所以要把py转换一下    py数据 -- C数据 -- 机器码
num = ctypes.byref(ctypes.c_long(70666888))
k32.WriteProcessMemory(int(game),0x33556A18,num,4)

Logo

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

更多推荐