if (WriteProcessMemory(handle,
ppfn, //where
&pfnNew, //what
sizeof(pfnNew), //how much
NULL) == FALSE)
MessageBox(0,"cant write", "rs[i]",MB_OK) ;
эффект тотже. Я хотел бы узнать в чем моя ошибка, может быть для записи в
адрессное пространство текущего процесса следует использовать какието
иные способы 7 Значение в ppfn, и pfnNew вродебы правельные.
Заранее спасибо!
А зачем тебе WriteProcessMemory, если ты правишь в своем адресном простанстве?01.04.05 03:34 Автор: AlexD <Alexander> Статус: Member
> Привет! > Я пытаюсь написать прогу которая изменяет в своем адрессном > пространстве > запись в таблице импорта. > Для записи я пытаюсь использовать функцию: > > if (WriteProcessMemory(GetCurrentProcess(), > ppfn, //where > &pfnNew, //what > sizeof(pfnNew), //how much > NULL) == FALSE) > MessageBox(0,"cant write", "rs[i]",MB_OK) ; > > она всегда оканчиваеться неудачей, я пытался > > handle = OpenProcess( > PROCESS_QUERY_INFORMATION | > PROCESS_CREATE_THREAD | > PROCESS_VM_OPERATION | > PROCESS_VM_WRITE, > FALSE, GetCurrentProcessId()); > > if (WriteProcessMemory(handle, > ppfn, //where > &pfnNew, //what > sizeof(pfnNew), //how much > NULL) == FALSE) > MessageBox(0,"cant write", "rs[i]",MB_OK) ; > > эффект тотже. Я хотел бы узнать в чем моя ошибка, может > быть для записи в > адрессное пространство текущего процесса следует > использовать какието > иные способы 7 Значение в ppfn, и pfnNew вродебы > правельные. > Заранее спасибо!
а ты уверен что поинтер куда ты пишешь (ppfn) существует
я попробовал у меня всё работает.
[Win32] [C++] VirtualProtectEx() исполни для получения права записи в страницу, может в этом дело?26.03.05 22:42 Автор: HandleX <Александр М.> Статус: The Elderman