Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

WriteProcessMemory   Найти похожие ветки 

 
evvcom   (2004-02-06 03:14) [0]

Здравствуйте уважаемые Мастера.
Мне требуется перехватить API-вызов. Все сделал как в букваре Рихтера, отыскал DWORD, который надо поменять, но WriteProcessMemory возвращает False. GetLastError после этого возвращает $3e6 (Неверная попытка доступа к адресу памяти).
Попробовал писать в локальную переменную функцией WriteProcessMemory - все проходит Ок, т.е. нигде, ничего с адресами не напутал. Естественно правильность адресов также отслеживал через окно отладчика CPU.
Я тут встретил один ответ, в котором что-то предположилось о XP и правах пользователя. Отлаживаю как раз на XP, но с правами админа.


 
Digitman ©   (2004-02-06 08:38) [1]

см. VirtualProtectEx()


 
evvcom   (2004-02-06 19:07) [2]

Да, спасибо, помогло.
Я уже натыкался на эту функцию, но меня смутило:

All pages in the specified region must have been allocated in a single call to the VirtualAlloc or VirtualAllocEx function.


 
Digitman ©   (2004-02-07 12:04) [3]


> evvcom   (06.02.04 19:07) [2]


и зря смутило.

если даже вызовом VirtualAlloc[Ex] был аллокирован регион из более чем одной страницы, то ничто не мешает вызовом VirtualProtect[Ex] изменить атрибуты доступа произвольного блока смежных страниц в этом регионе



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.035 c
3-1079458469
Igor G
2004-03-16 20:34
2004.04.11
ВDE в дистрибутив


14-1082459451
Soft
2004-04-20 15:10
2004.04.11
Задачка. Согласование волновых сопротивлений?


7-1076164544
Nekto
2004-02-07 17:35
2004.04.11
Boot


1-1082375157
wicked
2004-04-19 15:45
2004.04.11
virtual vs не-virtual


3-1081795892
Ну вобщем это мой ник
2004-04-12 22:51
2004.04.11
Господа, Простите мою наглость, не могли ли бы вы накидать ссылок