看板Programming
标 题[问题]关於游戏中动态记忆体的修改?
发信站KKCITY (Sun Aug 27 23:22:45 2006)
转信站ptt!ctu-reader!Spring!news.nctu!news.ntu!news.au!zoonews.ee.ntu!news.k
做这行就是要玩game(误)
关於静态(非变动位置)记忆体修改还算简单(范例如附件, 想用的玩家可以拿去)
但是, 对於动态(变动位置)记忆体 我就不知道要如何修改了
假设我用GM8抓到一个动态的位置 我要如写些简单的win32程式
去修改它呢?
-------------附件----------------------------------
#include<windows.h>
int pet_skill=7;
long pet1_addr=0x046C6504;//自己改, 我好几年前写的, 现在不适用
long pet2_addr=0x046C6580;
long pet3_addr=0x046C65FC;
long pet4_addr=0x046C6678;
long pet5_addr=0x046C66F4;
int main(void)
{
printf("\n版权属:<博物馆>肥仔工程师\n");
printf("\n宠物7技外挂\n");
HWND hwnd;
PDWORD phandle,sapid;
char *SAName = "StoneAge [达那1] via FreeCap";
hwnd = FindWindow(NULL,SAName);
if(hwnd==0)
hwnd = FindWindow(NULL,"StoneAge [达那1]");
if(hwnd==0)
printf("石器时代没有开启");
GetWindowThreadProcessId(hwnd,&sapid);
phandle=OpenProcess(PROCESS_ALL_ACCESS,FALSE,sapid);
//pet skill
WriteProcessMemory(phandle,pet1_addr,&pet_skill,2,NULL);
WriteProcessMemory(phandle,pet2_addr,&pet_skill,2,NULL);
WriteProcessMemory(phandle,pet3_addr,&pet_skill,2,NULL);
WriteProcessMemory(phandle,pet4_addr,&pet_skill,2,NULL);
WriteProcessMemory(phandle,pet5_addr,&pet_skill,2,NULL);
CloseHandle(phandle);
}
--
┌─────◆KKCITY◆─────┐ ◢
◤ 找歌最方便 KKBOX 歌词搜寻!!
│ bbs.kkcity.com.tw │ \^_^ / ★http://www.kkbox.com.tw★
└──《From:140.126.21.172
》──┘ ◤ 唱片公司授权,音乐尽情下载
--