Текущий архив: 2003.11.17;
Скачать: CL | DM;
ВнизРабота с памятью процессов Найти похожие ветки
← →
Micke (2003-11-07 19:36) [0]Расклад такой: мне необходимо с помощью дельфей обратиться к памяти другого процесса например по адресу 004043B1 и помянять его значение на нужное мне. Типа также как и трейнеры для игрушек пишуться. Подскажите как. Желательно как можно больше примеров (например поменять по адресу 004043B1 значение на "10" любой проги.
Буду очень благодарен!
← →
Pattern (2003-11-07 22:39) [1]ХМ... Мне кажется, что винда, тем более ХР тебе не даст такой наглости - править себя....
← →
Dimaxx (2003-11-08 00:10) [2]Вот тебе пример "патчера" для программ, в том числе упакованных.
program Loader;
uses Windows;
const
buf: array[0..1] of byte = ($eb,$13);
appname="empty.exe";
var
I: cardinal;
sti: TStartupInfo;
lpPi: TProcessInformation;
begin
if not CreateProcess(nil,AppName,nil,nil,false,CREATE_SUSPENDED,nil,nil,StI,lpPI) then
begin
messageboxa(0,"А де radmin.exe?","RA Loader",0);
halt;
end
else //Ждем пока распакуется
{while true do
if readprocessmemory(lppi.hProcess,pointer($ac0506),@buf[0],1,i)
then
if buf[0]<>$0 then
begin
//остановили процесс
suspendthread(lppi.hThread); }
//записали чо хотели
//writeprocessmemory(lppi.hProcess,pointer($004054DF),@buf[1],1,i);
writeprocessmemory(lppi.hProcess,pointer($004054DF),@buf,2,i);
//поехали дальше!
resumethread(lppi.hThread);
closehandle(lppi.hprocess);
halt;
//end;
end.
Страницы: 1 вся ветка
Текущий архив: 2003.11.17;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.016 c