MasterGH

Компиляция CE Дельфи (актуально до версии 5.6.x)

11 сообщений в этой теме

Скачивайте исходник CE RUS 5.6 v1.0 (залил пока сюда, ссылка действует 30 дней), пока скачивается, читайте инструкцию.

Исходники очень ёмкие к этому нужно привыкнуть. Привыкнуть к исходникам, если вы не сталкивались с проектами такого объёма и писали мелкие программки можно только после не менее нескольких часов кодокопания.

Для мелких модификаций CE достаточно знать как написать калькулятор на любом языке программирования, на котором можно писать приложения (кроме скриптовых). Знания Дельфи по сути нужны минимальные для того чтобы исправлять множество процедур, для того чтобы задавать в визуальном редакторе свойства компонетов и т.п. Если хотите пойти дальше, то читайте ниже.

У вас должны быть минимальные знания:

-Вы можете написать прототип калькулятора на дельфи: присвоить события кнопкам, задать свойства кнопкам и другим визуальным компонентам. Знать как писать процедуры и фунуции.

-Вы разбираетесь в области видимости внутри модуля и классов.

-Вы знайте минимальные (чуть ли не самые основные необходимые) принципы работы с классами.

Например, создать объект:


var Anyobject : TAnyClass;
begin
Anyobject :=TAnyClass.Create;
//.... вы можете работать со свойствами Anyobject, будет это любой компонент или некоторый класс написанный Дарк Байтом или мной
Anyobject.destroy;
end;
procedure TAnyClass.AnyMethod({any param}):

Вы умеете создавать окна, показывать, скрывать и т.п. это же касается любых других визуальных компонентов.


From1.Show;
From1.Hide;
From1:= TForm.Create;

Вы умеете обращаться к данным классов в других модулях, знаете это как делать. Область модуля ниже.



[b]interface[/b] //здесь описание, которое может быть видно другим модулям
uses Windows, Messages, SysUtils{...}; // тут открываем видимость описаний из этих модулей Windows, Messages, SysUtils и других. Фигурные скобки это комментарии (это для тех кто может не знать :ninja: )

//Это всё ещё область интерфейсной части, здесь находятся описания типов, переменных которы могут видеть другие модули

[b]implementation[/b] // это часть реализации, всё что в неё входит из других модулей не видно

uses
formMemoryModifier;
// formMemoryModifier.pas должен существовать по известному пути проекта. Иначе будет ошибка компиляции - вам скажут что модуль не найден. Также если модуль отсутствует, а описания из него используется, то вам скажут что не найдено описание и вы можете предположить что у вас не описан необходимый модуль.
// Вы должны понимать отличие применения uses в интерфейсной области и области реализации. Сложно объяснить словами: если один модуль включает другой, а тот включает первый, то они не могут брать описания друг друга из одной интерфейсной части...

inicialization
//область инициализации
finalization
// область финализации.
end.
unit MainUnit; // название модуля

Подробнее здесь.

Также вы можете посмотреть в viewresource проекта


program cheatengine;
{$else}
{$R 'trainer.res' 'trainer.rc'}

library CheatEngine;
{$endif}

{$R 'trainer.res' 'trainer.rc'}

uses
Forms,
windows,
registry,

// frmOpenGLUnit in 'frmOpenGLUnit.pas' {frmOpenGL};

{$R *.RES}

begin
Application.Initialize;
getcedir;
setlanguage;
Application.Title := 'Cheat Engine 5.6';
//...
Application.CreateForm(TfrmSpeedPanel, frmSpeedPanel);
initcetitle;
Application.Run;
end.
{$ifndef ceasinjectabledll}

Здесь есть так называем макросы, которые изобилуют во всём проекте, подключение ресурсов... Почитайте это в интернете, это может пригодится, а может и нет.

Немного о классах.

Суть в том что классы включают в себя методы(процедуры и функции), поля (переменные с описанием типа), свойства, сообщения и т.п. в областях видимости. Пример.


[b]private[/b]
m:dword;
[b]protected[/b]
procdeure Any; message; Om_CLICK
procedure ANY; stdcall;
function procd(aMyClass: TClass):dword:
[b]public[/b]
property a:dword read m write procd;
end;
MyClass = TClass

Также вы должны описать реализацию класса. Дарк байт написал кучу подобных классов, простой найдите в нете как с этим работать если вы не знаете.

Советую в помощь примеры ссылок.

При каких-то общих вопросах.

При работе с компонентами

Инструкция по копиляции

1. Дарк Байт компилировал Delphi 7, я же пока компилирую Delphi 10 Lite (инсталятор весит 60 мб,можно скачать в нете ).

2. В менеджере проектов у вас должно быть три проекта в группе проектов.

post-3-1295357632,51_thumb.gif

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

Порядок компиляции и примеры указания путей я привёл на скриншотах.

post-3-1295357638,35_thumb.gif

post-3-1295357644,51_thumb.gif

При первой сборке (шаг1), в директории bin должны быть trainerwithassembler.exe и trainer.exe. Вы можете создать пустые файлы и переименовать их (если у вас их нет). Но этого делать ненужно, т.к. я эти файлы оставил.

Шаг 2 и Шаг 3 - компиляция trainerwithassembler и trainer всегда сопровождается ошибками, но при этом файлы trainerwithassembler.exe и trainer.exe компилируеются нужным образом, поэтому не обращайте внимания. Далее шаг 4 - завершающий, при котором Cheatengine.exe "включает" в себя trainerwithassembler.exe и trainer.exe и компилируется. На этом шаге у вас рабочий Cheatengine.exe в папке /bin.

Некоторые папки, на которые стоит обратить внимание при настройке проектов:

E:CE56CE 56 RUS - папка проекта cheat engine

E:CE56CE 56 RUSstandalone - папка двух проектов trainerwithassembler и trainer

E:CE56CE 56 RUSbin - папка выходных файлов. Там у вас должны появляться три скомпилированные файла проекта. Чтобы они корректно работали нужны библиотеки, которые можно быстро скопировать из папки оригинальной версии CE, установлнной на вашем компьюторе ранее.

E:CE56CE 56 RUSunitbin - ещё одна важная папка с .dcu - файлами, которые собираются на шаге 1 (на рисунке)

Послесловие.

Если вам это всё нравится как и мне, то желаю приятной вам модификации. Когда что-то делаешь и видишь, что это работает это доставляет много удовольствия. Сразу всё не получится, будет трудно привыкнуть.

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

Бетатесты проводить пока только для моей версии CE. Если ваши версии, будут весьма полезными, тогда можно проводить бета тесты и для ваших версий. Хотя лучше всё-таки помогать мне и сосредоточится на версии над которой я работаю.

Все аспекты по поводу модификаци CE ещё не обдуманы, но они мне так видятся. Скоро я буду заполнять этот подфорум темами....

Отдельного внимания заслуживает развитие автоассемблера, трейсинга в отладке и работы плагинов. Это конечно не для простых смертных, но если найдутся люди, которые решат вместе со мной заняться модификацими в этой области я поделюсь с ними своими идеями.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какая ревизия исходников выложена, 313?

6 дней назад появилась ревизия 314. Её тут нету?

PS всё сделал по инструкции. Третий проект вроде создал trainerwithassembler.exe, а вот первых 2 не собираются.

Билд CE пишет: [Error] RLINK32: Unsupported 16bit resource in file "MainUnit.DFM"

Компиляция trainer.exe пишет: [Fatal Error] Trainer.dpr(17): Unit MainUnit was compiled with a different version of memscan.TMemScan

Пользуюсь Delphi 7

Upd: скачал Delphi Lite 10.0.2558.35231 Update 2

Ошибки при билде CE: [Pascal Fatal Error] MainUnit.pas(9): F1026 File not found: 'Gauges.dcu'

При компиляции тренеров: [Pascal Fatal Error] MemoryTrainerUnit.pas(10): F2063 Could not compile used unit 'plugin.pas'

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

То что лежит сейчас на оф сайте CE пусть лежит, т.к. там не хватает модулей. Необходимо установить только исходники, которые я выложил в этой теме. Скачивал я их то ли третьего февраля, точно не помню. Дельфи у тебя такая же как и у меня, если тебе это важно знать.

Где я могу посмотреть ревизию?

Понятие "собрать", отличается от понятия компиляции. Сборка, т.е. билд должен быть только CE. Затем компиляция trainerwithassembler.exe и trainer.exe (будут ошибки но на них не обращай внимание). Затем компиляция cheatengine.exe. Теперь если будешь нажимать на "плей", то убедись, что у тебя активный проект cheatengine.exe (выделен жирным, а другие нет).

Перепроверь все пути поиска модулей для проектов trainerwithassembler.exe и trainer.exe.

Должно всё работать. Если бы не работало, то я бы не выкладывал модификации :)

Скоро я выложу новые исходники и очередной бетатест...

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ревизию я увидел в "папка с исходникамиunitbindefault.htm" а как её точно определить кто бы знал.. файлы с сайта сравнивать... ну да ладно, это не так важно..

Upd: в общем разобрался я с этой белибердистикой. Gauges можно спокойно удалить из исходников. Там ещё одна ошибка выскочит - её тоже под снос :) Об этом писал дарк байт в далёком 2007 году. Косяк видимо не проявится, если поставить фулл версию делфи, не лайт. Там все нужные файлы включены. CE благополучно скомпилился и запустился) УРА! Пойду в код вникать)

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Правильно, C:Program FilesDelphi 10 LitelibGauges.dcu

Залил его. В Дельфи лайт есть дистрибутив обновлений.

setup - Borland Sample Components.exe . Если мне память не изменяет я именно его устанавливал давно, чтобы CE компилилась.

На всякий случай, вот ссылка на него.

Не удивительно, что у тебя столько мучений. У меня было также, правда это было очень давно.

На счёт того чтобы понять "природу ошибок". Там замешаны макросы которые для каждого проекта открывают видимость и в них я так и не разобрался.

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

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Выкладываю исходники для CE 5.6 RUS (v 1.0) (Бета тест 4) (ссылка сроком на 30 дней)

Ссылка (13 мб, "CE 56 RUS.rar")

aliast, уже сделал перевод настроек и тутора, чего в этих исходниках нет, но я включу эти изменения позже.

Когда я сделаю следующий бета-тест пока не знаю.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Дайте кто исход 6.0 и выше ато только 5.5 5.6 а 6.2 там не хватает файлов

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Последний исходник можно скачать с SVN (ссылку можно найти на оф. сайте). И пользоваться уже Lazarus, а не Дельфи.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ссылка (13 мб, "CE 56 RUS.rar")

Выложите исходник на RGhost ! Турботит недоступен !

Ссылка (13 мб, "CE 56 RUS.rar")

Выложите исходник на RGhost ! Турботит недоступен !

Ссылка (13 мб, "CE 56 RUS.rar")

Перезалейте кто срочняк нада ((((

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.