現在,我知道以前可能有人問過類似的問題,並相信我,在過去的幾天裏,我一直在環顧網絡尋找已經回答的情況,但是我仍然無法得到這個工作,說實話,不知道爲什麼它不工作。我試圖做的是獲得遊戲中的彈藥價值。 readMemory,這是一個int,應該包含這個值,但是它只是輸出0ReadProcessMemory - 向指針添加5個偏移量
ReadProcessMemory(handle, (PBYTE*)(base_adr), &pAddress1, sizeof(pAddress1), 0);
ReadProcessMemory(handle, (PBYTE*)(pAddress1 + offset_1), &pAddress2, sizeof(pAddress2), 0);
ReadProcessMemory(handle, (PBYTE*)(pAddress2 + offset_2), &pAddress3, sizeof(pAddress3), 0);
ReadProcessMemory(handle, (PBYTE*)(pAddress3 + offset_3), &pAddress4, sizeof(pAddress4), 0);
ReadProcessMemory(handle, (PBYTE*)(pAddress4 + offset_4), &pAddress5, sizeof(pAddress5), 0);
while (1)
{
ReadProcessMemory(handle, (PBYTE*)(pAddress5 + offset_5), &readMemory, sizeof(readMemory), 0);
cout << readMemory << endl;
}
顯然,這是不添加指針的有效方法(也不是工作方式,我想),我正在尋找能夠指引我走向正確方向的人。謝謝,並且再次爲(很可能在你的眼中)一個基本問題感到抱歉。
DWORD base_adr = 0xCC8408;
const DWORD offset_1 = 0x23C;
const DWORD offset_2 = 0x7A4;
const DWORD offset_3 = 0x34C;
const DWORD offset_4 = 0x5B0;
const DWORD offset_5 = 0x2D8;
DWORD pAddress1;
DWORD pAddress2;
DWORD pAddress3;
DWORD pAddress4;
DWORD pAddress5;
什麼是不工作? – RbMm
@RbMm好吧,我試圖在遊戲中獲得彈藥價值,然而'readMemory'(int)輸出爲0.將進行編輯以澄清所有人,對不起。 – 4Dimensions
@ 4Dimensions建議設置一個簡單的程序,其中包含一個簡單的數據結構以用作測試假人。當你可以讀取和修改測試假人的記憶時,開始嘗試操縱「真實」程序。 – user4581301