Python写一个修改只狼金币的demo

Python写一个修改只狼金币的demo

废话不多说直接上代码

import time

import win32gui  # 界面模块
import win32process  # 进程模块
import win32api
import ctypes

kernel32 = ctypes.windll.LoadLibrary(r"kernel32.dll")  # 核心文件
PROCESS_ALL_ACCESS = (0x000F0000 | 0x00100000 | 0xFFF)  # 调用最高权限执行
window_handle = win32gui.FindWindow(None, "Sekiro")  # 找到窗口句柄
print("window_handle",window_handle)
process_id = win32process.GetWindowThreadProcessId(window_handle)[1]  # 获取进程ID
print("process_id",process_id)
process_handle = win32api.OpenProcess(PROCESS_ALL_ACCESS, False, process_id)  # 得到进程句柄
print("process_handle",process_handle)



def findAdress(phandle,basead,shift):
    tmpData = ctypes.c_void_p()
    kernel32.ReadProcessMemory(int(phandle), ctypes.c_void_p(basead), ctypes.byref(tmpData), 8, None)
    aimdata = ctypes.c_void_p()
    for s in shift[:-1]:
        kernel32.ReadProcessMemory(int(phandle), ctypes.c_void_p(tmpData.value+s), ctypes.byref(aimdata), 8, None)
        tmpData = aimdata
        print("tmp_data",aimdata)
        time.sleep(1)
    return aimdata.value+shift[-1]

aim = findAdress(process_handle,0x143D5AAC0,[0x68,0x238,0x7C])
print("金币地址:",aim)
data4 = ctypes.c_void_p()
kernel32.ReadProcessMemory(int(process_handle), ctypes.c_void_p(aim), ctypes.byref(data4),8, None)
print("金币数量",data4)



money_num = 99991
kernel32.WriteProcessMemory(int(process_handle),ctypes.c_void_p(aim), ctypes.byref(ctypes.c_long(int(money_num))), 8,None)
 



python版本3.9 用到了pywin32 模块 建议直接下载pywin32-304.0-cp39-cp39-win_amd64.whl 手动安装。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值