АнтиКрэковые МученияDelphi , Программа и Интерфейс , Исследование программАнтиКрэковые Мучения
Оформил: DeeCo Вобщем, я решил выслать NEXT REVISION проекта АКМ. Произошли следующие изменения. В проекте BIN2ASM изменился 1 байт. В модуле MainUnit.pas в строке 80: БЫЛО: Write(TxtFile, ' DW ' + IntToStr(Buf^[i])); СТАЛО: Write(TxtFile, ' DB ' + IntToStr(Buf^[i]));Совсем старый стал, забыл зачем я все это пишу. Нам изначально нужен массив байт. Так уж TStream устроен. Короче, умные могут поправить сами, а желающие могут скачать новую версию целиком ( Я знаю, что вы сделаете! ;)))) ). Поехали дальше. Сам проект АКМ претерпел несколько важных изменений. Первое, появился некий файл SecUnit.cfm.asm. Интуиция подсказывает мне, что это результат перемолки файла SecUnit.cfm в блоке BIN2ASM. Второе, Я специально закатал в комментарии старые строки, в образовательных, так сказать, целях. Добавлен класс TCryptHandle = class(TStream), который, в отличии от TCryptFile, является прямым наследником TStream и братаном THandleStream. Думаю, не стоит пускаться в философские рассуждения по структуре этого класса. По крайней мере, мой внутрений голос (коллега справа) ничего не говорит. Он вообще сайчас занят влюбленным рассматриванием Пятого Буилдера. Медитирует, так сказать, на Object Inspector. Не будем его трогать. Я уверен, здесь собрались профессионалы, а не двоешники сбежавшие с последнего звонка. "двоешники" пишется через "ч" ! Кто-то изучал Делфя на уроках русского. (Сосед-с-права) Вернемся к нашим BEGIN-ам. Так же добавлена уже знакомая вам процедура TryToCall, которая содержит в себе теже цифири, что обитают внутрях SecUnit.cfm.asm. Хочу обратить ваше внимание на такую важную занозу в TCryptHandle, которая несколько портит универсальность этого "класса". Это константа 2235, Которая мельком появляется в конструкторе и методе Seek. Сие дикое сочетание двух неудов, одного уда и одной взятки за хорошее поведение означает не что иное как размер файла SecUnit.cfm. Так теперь о том, как все это юзать. В строке 313 главного модуля можно заметить пример на эту тему. Stream := TCryptHandle.Create(@TryToCall); Ничего выдающегося. И последнее, в модуле CryptUnit.pas поменялась единственная процедурка, выдающая себя за связистку Кэт (симпатичная такая). Там изменилось приведение к типу в цикле FOR. Я вынужден был убить адресный префикс, а то злостный компилятор строго грозил пальцем (прямо как дядюшка Элджер рассказывал). Итак, качайте и наслаждайтесь. 8-) В статье описываются изменения в проекте АнтиКрэковых Мучений (АКМ), включая изменение кода в модуле MainUnit.pas, появление нового файла SecUnit.cfm.asm и добавление класса TCryptHandle. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Исследование программ ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |