py案例 -- 单机游戏内存挂

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)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
提供国人写的强大的html5植物大战僵尸(源码) 写得很棒~占用资源少。 JSPVZ 程序制作进度(2011.1.5) 本程序提供源码由HTML5中文网整理打包下载,该下载包可以使用服务器环境运行,也可以在电脑上双击Index.htm直接运行 另外智能手机可以安装OperaMobile10.1及其以上版本,把代码整个拷贝到手机存储卡上,在浏览器中输入形如“E:/jspvz”形式的地址直接本地运行程序,无需联网 转载使用请勿修改LonelyStar署名,pvz.lonelystar.org网址和PopCap公司版权声明 保留对该JS版植物大战僵尸版权所有 2011.1.5 添加了第二大关的第三小关 修正一大波和最后一波字样无法消失的BUG 2010.12.31 添加了“解谜模式” 调整了程序中关卡对于胜利和失败的算法 几个植物和僵尸做了调整 修改了几个BUG 2010.12.27 对初始界面稍作修改 2010.12.9 添加了“靠天吃饭”小游戏 给领带僵尸添加两种形象 修正辣椒爆炸图片的问题 咖啡豆0耗的数据修正 2010.12.8 提高了一下僵尸行走的纵坐标 修正了土豆雷和樱桃炸弹爆炸图片在IE下的问题 调整了一大波僵尸和最后一波僵尸出现的图片效果 2010.12.7 添加了第二大关的两小关 添加了“乱葬岗”小游戏 修改了几个BUG 调整了进度显示 2010.12.1 添加了“贫瘠之地”小游戏 调整游戏初始化界面和选择模式界面 修正第十关IE下运行报错的BUG 修正IE下单机运行有部分图片看不到的问题 修正蘑菇植物无睡眠动画而实际却在睡眠的BUG 修正曾哥蘑菇种植在醒着的大喷菇上仍然睡着的BUG 修正僵尸出场界面显示僵尸种类的BUG 修正地刺和地刺王伤害过高的BUG 加大“僵尸快跑!”的难度
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值