Как читать каждый байт в памяти процесса? После того, как мы закончили чтение, как мы создаем «шестнадцатеричный» свалку процесса?Как читать каждый байт в памяти другого процесса?
Для примера:
Process a.exe:
00400000: 00 00
00400002: 74 05
...
сканирования:
00 74 05 ...
сбросами a.exe к a.txt:
00 74 05
Мои компилятор - visual C++ 2010, и я pla nning при написании приложения 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