Сейчас на форуме: _MBK_, user99, ManHunter (+8 невидимых)

 eXeL@B —› Основной форум —› Создание патча на Delphi
Посл.ответ Сообщение

Ранг: 7.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 21 сентября 2005 08:37
· Личное сообщение · #1

Какие функции используютьса для создания патча?
И какой их синтаксис?



Ранг: 42.0 (посетитель)
Активность: 0.040
Статус: Участник

Создано: 21 сентября 2005 08:42
· Личное сообщение · #2

WinAPI



Ранг: 42.0 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 21 сентября 2005 08:56
· Личное сообщение · #3

Devil_guy пишет:
Какие функции используютьса для создания патча?
И какой их синтаксис?


МАМА!!!! Я в полном ауте!
Функции фалового ввода-вывода! read() & write(), в концу концов!




Ранг: 115.8 (ветеран)
Активность: 0.080
Статус: Участник

Создано: 21 сентября 2005 09:02
· Личное сообщение · #4

WinAPI
PatchCreateA, PatchCloseW и т.д.
поищи их в Patchdlg.DLL

-----
Ни одно доброе дело не должно остаться безнаказанным !!!




Ранг: 7.6 (гость)
Активность: 0=0
Статус: Участник

Создано: 21 сентября 2005 09:12
· Личное сообщение · #5

Я имею виду Seek & Write




Ранг: 90.3 (постоянный), 1thx
Активность: 0.030
Статус: Участник

Создано: 21 сентября 2005 10:20 · Поправил: SLayer
· Личное сообщение · #6

Чево хочeшь, то и можешь использовать. Конкретизируй вопрос (в твоём патче али в чьём то чужом).
А вообще есть много книг по Delphi.

AG пишет:
МАМА!!!! Я в полном ауте!

:




Ранг: 89.2 (постоянный)
Активность: 0.060
Статус: Участник

Создано: 21 сентября 2005 10:50 · Поправил: NEOPEX
· Личное сообщение · #7

Лично я использую

файловая переменная.Read(Seek,Readbuf,Write,Writebuf);

Чтобы открыть используй

файловая переменная := TFile.Stream.Open(имяфайла,fmReadWrite);

Так очень удобно создавать именно патчи(в том числе универсальные)

P.S. Я это по памяти написал - так что извиняй если не работает

2 Av0id Писать патчи на асме лучше но на дельфи - прикольней

Сложно поверить в долгожданную месть - Армагедон уже здесь...

-----
Люблю повеселиться, особенно пожрать





Ранг: 78.6 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 21 сентября 2005 10:53 · Поправил: read_me
· Личное сообщение · #8

[EXE]_cutor
авдруг он найдёт?



Ранг: 516.1 (!), 39thx
Активность: 0.280
Статус: Участник

Создано: 21 сентября 2005 11:30
· Личное сообщение · #9

имхо патчеры на дельфи пишут извращенцы



Ранг: 42.0 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 21 сентября 2005 11:41
· Личное сообщение · #10

Av0id пишет:
имхо патчеры на дельфи пишут извращенцы

согласен

Devil_guy пишет:
Какие функции используютьса для создания патча?
И какой их синтаксис?


А вообще с такими вопросами ходят не дельфи.ру или куда-то в ту же степь...




Ранг: 90.3 (постоянный), 1thx
Активность: 0.030
Статус: Участник

Создано: 21 сентября 2005 12:34
· Личное сообщение · #11

Av0id пишет:
имхо патчеры на дельфи пишут извращенцы

не согласен!!!
Если удобно, то почему "нет"?
А если ещё не использовать VCL, то выходит очень заманчиво (окло 10 Кб).




Ранг: 78.6 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 21 сентября 2005 13:06
· Личное сообщение · #12

помоему патчер на чём угодно можно написать, т.к. он нужен только один раз
хоть на бейсике




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 21 сентября 2005 13:27
· Личное сообщение · #13

read_me пишет:
хоть на бейсике

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

-----
[nice coder and reverser]





Ранг: 221.8 (наставник)
Активность: 0.150
Статус: Участник

Создано: 21 сентября 2005 13:58
· Личное сообщение · #14

Devil_guy
Тебе сюда www.biocyborg.cjb.net/



Ранг: 384.1 (мудрец)
Активность: 0.250
Статус: Участник
www.int3.net

Создано: 21 сентября 2005 21:51
· Личное сообщение · #15

Av0id
AG
Hellspawn
Гнете пальцы?
вы сразу програмьте в 0101 и будете настоящие гуру
вместо того что бы помочь, флеймите тут...

Devil_guy
вот примерный пример на дельфе:
const
cPatch=$EB;
var
fEXE : file;
bPatch: byte;
begin
AssignFile(fEXE,'c:\crackProgram\crackme.exe'); // сфязваем переменную fEXE с файлом
Reset(fEXE,1); // открываем файл
Seek(fEXE,$18FF); // смещаемся в файле
BlockRead(fEXE,bPatch,1);
if bPatch=$EB then
MessageBoxA(0,'patch','Уже пропатчен',64);
else
BlockWrite(fEXE,cPatch,1);
CloseFile(fEXE); // закрываем файл
end;

Синтаксис не препомню, писал на память, так что если будут ошибки посмотри хелп

-----
Подписи - ЗЛО! Нужно убирать!




Ранг: 516.1 (!), 39thx
Активность: 0.280
Статус: Участник

Создано: 22 сентября 2005 00:12
· Личное сообщение · #16

nice, пишу патчи и прочую муть всегда на асме или накрайний случай на сях, всё остальное чуждо для меня, особенно дельфи



Ранг: 384.1 (мудрец)
Активность: 0.250
Статус: Участник
www.int3.net

Создано: 22 сентября 2005 00:49
· Личное сообщение · #17

Av0id
Ну и зачем ты создал данный пост?
ты крут! это хотел услышать? не форум а помойка становится...
Делаю тебе первое предупреждение!

-----
Подписи - ЗЛО! Нужно убирать!




Ранг: 42.0 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 22 сентября 2005 02:20
· Личное сообщение · #18

Av0id пишет:
пишу патчи и прочую муть всегда на асме или накрайний случай на сях, всё остальное чуждо для меня, особенно дельфи

Хм... не факт! патчи можно писать на чем угодно - хоть на перле или шелл-скриптах. мне приходилось... вопрос тольлко в удобстве применения.

nice, каюсь, надо было сразу отослать его не дельфи.ру (или куда-то туда), ибо, согласись, вопрос не по крякингу, а по программированию на дельфи... а это, как говорят в Одессе - две большие разницы!



Ранг: 384.1 (мудрец)
Активность: 0.250
Статус: Участник
www.int3.net

Создано: 22 сентября 2005 02:25
· Личное сообщение · #19

AG пишет:
ибо, согласись, вопрос не по крякингу, а по программированию на дельфи...

Согласен на 100%, закрываю тему

-----
Подписи - ЗЛО! Нужно убирать!



 eXeL@B —› Основной форум —› Создание патча на Delphi
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати