我們如何讀取進程內存中的每個字節?在我們讀完之後,我們如何製作這個過程的「十六進制」轉儲?如何讀取另一個進程的內存中的每個字節?
有關示例:
過程A.exe時:
00400000: 00 00
00400002: 74 05
...
掃描:
00 74 05 ...
傾倒A.exe時到A.TXT:
00 74 05
我編譯器是visual C++ 2010,我是pla編寫一個win32應用程序,它將使用這個函數。我將要使用的操作系統是Window 8.但是,我的應用程序應該適用於Windows 8,至少Window XP。
到目前爲止,這是我得到了什麼?
#include <windows.h>
void ScanForBytes(const char* TargetName, DWORD dwFromAddress, DWORD dwToAddress) {
HANDLE hProc; // I guess we will be needing the handle to the process.
//And this is where I stopped and asked for help...
}
int main() {
ScanForBytes("Chrome.exe", 0x00400000, 0x00400001);
return 0;
}
出於好奇心,避免不當應用程序氾濫的不可挽回的慾望,以及認真嘗試提供最佳解決方案......您是否介意與我們分享*爲什麼*您認爲您需要這樣做? –
[讀取進程內存]的可能重複(http://stackoverflow.com/questions/2300894/reading-a-process-memory) – Suma