Re: [問題]關於遊戲中動態記憶體的修改?
K取得
取得他的pointer
用binary去讀寫它
這樣最快
※ 引述《sealoe@kkcity.com.tw ( )》之銘言:
> 做這行就是要玩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);
> }
--
▊▊█ ▊▊█ ██
靜宜大學 水世界 Υ ● ▊▊█ ▊▊█ ██
bbs.cs.pu.edu.tw ◢██◣ ◥◥◤ ◥◥◤ ██
140.128.9.94 ﹋﹌﹏█⊙██◣◢﹏﹋﹌﹏ ██
※ 飄流自 :61-216-21-231.dynamic.hinet.net
討論串 (同標題文章)
Programming 近期熱門文章
PTT數位生活區 即時熱門文章