Твой код выше писал(а):
/*Этот цикл отвечает как раз за то, что наша программа не совершит лишних действий.
Память в Windows в процессе делится на "регионы".
У каждого региона свой уровень доступа: к какому-то доступ запрещен, какой-то можно только прочитать.
Нам нужны регионы доступные для записи.
Это позволит в разы ускорить работу поиска по памяти и избежать ошибок записи в память. Именно так работает ArtMoney.*/
if(VirtualQueryEx(hProc, lpAddress, &mbi, sizeof(mbi))){
//Узнаем о текущем регионе памяти.
if((mbi.Protect & PAGE_READWRITE) || (mbi.Protect & PAGE_WRITECOPY)){
// Если он доступен для записи, работаем с ним.