Вниз
Скачать: CL | DM;

Создание патча   Найти похожие ветки 

← →
TheGUEST   (2005-08-13 18:00) [0]

Уважаемые,

нет ли у кого подробного примера создания патча? Меня интересует поиск и замена значений по оффсету.


← →
Eraser ©   (2005-08-13 21:57) [1]

TheGUEST   (13.08.05 18:00)

Очень хорошо для данной цели подходит TFileStream.


← →
Grief ©   (2005-08-14 11:00) [2]

Патч - по кусочкам файла - мастдайство - патч будет весить намного больше чем заменяемый файл, если конечно не сделаешь супер-пупер алгоритнм - гораздо проще заменять целиком файлы. Впрочем зачастую так и есть.


← →
TheGUEST   (2005-08-14 12:46) [3]

Ну почему же больше? Мне же не нужно что бы он велючал в себя файл. Все просто, он находит нужные оффсеты и меняет значения.

Программер из меня хреновый, а вот HEX-редактором я пользоваться умею. Часто режу с помощью него баннеры (например дл Download Master), хотл написат патч который будет это делать...


← →
Eraser ©   (2005-08-14 14:20) [4]

TheGUEST   (14.08.05 12:46) [3]

TFileStream подходит именно для самого "пропатчивания".
А сам патч должен состоять из 2-х частей:
1. Данные.
2. Таблица в которой находится информация куда и как Данные патчить.


← →
NightLord ©   (2005-08-15 06:34) [5]

var f:TFileStream;
   s:byte;

begin
 //открываем файл для чтения
 f:=TFileStream.Create"xxx.exe", fmOpenReadWrite);
 //переходим на нужную позицию в файле
 f.Seek($0ac0e9, soFromBeginning);
 //читаем текущее значене
 f.Read(s , sizeof(s));
 //Если текущее значение равно $74, то исправляем
 if s=$74 then
 begin
   s:=$eb;
   f.seek($0ac0e9, soFormBeginning);
   f.Write(s, sizeof(s));
 end;

 f.free; //закрываем
end;



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
14-1126822620
Германн
2005-09-16 02:17
2005.10.09
Формат файла Autorun.inf


2-1125316242
Dust
2005-08-29 15:50
2005.10.09
весьма хитраяситуация... именно так, без пробелов


4-1123759691
BFG9k
2005-08-11 15:28
2005.10.09
Окно с прозрачной областью


14-1126730104
Pasha L
2005-09-15 00:35
2005.10.09
Модуль System


1-1127222082
OldNaum
2005-09-20 17:14
2005.10.09
TPanel Vs. XPManifest




   Наверх