Декомпиляция. Вырывание форм из *.EXE
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.142] |
|
|
ПРАВИЛА РАЗДЕЛА · FAQ раздела Delphi · Книги по Delphi
Декомпиляция. Вырывание форм из *.EXE
|
Сообщ.
#1
,
|
|
|
|
Здравствуйте. Меня к вам переслали с другого Дельфи-форума.
Проблема заключается в следующем. У меня есть целевой *.EXE, и я хочу достать из него все формы, сами процедуры мне не нужны. Пользуюсь DeDe. После декомпиляции получаю файлы *.dfm тпеого содержания ![]() ![]() object SButtonOK: TInfuSpeedButton Left = 8 Top = 314 Width = 89 Height = 22 Caption = '_OK' Flat = True Transparent = False OnClick = SBtnOKClick end object SButtonCancel: TInfuSpeedButton Left = 104 Top = 314 Width = 89 Height = 22 Caption = '_Cancel' Flat = True Transparent = False OnClick = SBtnCancelClick end object ListBoxPics: TInfuListBox Left = 8 Top = 121 Width = 185 Height = 186 TabStop = False Style = lbOwnerDrawFixed BevelKind = bkFlat BorderStyle = bsNone Columns = 6 ItemHeight = 26 TabOrder = 0 OnClick = ListBoxPicsClick OnDrawItem = ListBoxPicsDrawItem OnKeyDown = EditStKeyDown end В общем код разметки. Попытался открыть *.dfm в дельфи и он мне лишь дал окно с этим кодом. Можно ли как то сделать так что бы Дельфи сам преобразовал код в формы? Просто я понимаю что если в ручную собирать формы лишь по коду это займет очень много времени. Так как форм по меньшей мере штук 30-40. зы. так же в DeDe можно сохранить *.pas. Но DeDe отказывается это делать. Возникает непонятная ошибка. Кто-нибудь может мне чем то помочь? Все что мне нужно это лишь получить точную разметку форм. Не обязательно что бы на них были рабочие процессы и формы были связаны между собой. |
|
Сообщ.
#2
,
|
|
|
|
без пасов делфи открывает этот файл как обычный текстовый (в старых версиях даже при наличии пасов при открытии dfm-ок он открывал их в тектовом виде а не в виде формы). самый простой способ это набросать на форму техже компонентов и в томже количестве, с теми же именами. сохранить это дело и заменить *.dfm файл.
Просто этот файл не является формой он служит для ее настройки, а сама форма объявлена в пасе. |
|
Сообщ.
#3
,
|
|
|
|
ViktorXP, набрасывать придется долго.... у меня нет ни времени ни желания сейчас этим заниматься. Посчитал и форм ровно 50.
А есть ли еще какие то способы выдрать *.pas ? Может у меня DeDe кривой и не сохраняет *.pas, хотя по идее должен (если у кого есть проверенный рабочий DeDe киньте пожалуйста хотя бы в приват ссылку. как воздух надо) |
|
Сообщ.
#4
,
|
|
|
|
По-моему, DeDe сохраняет не только файлы форм, но и pas-файлы, просто у них обработчики пустые (ну или с какими-то комментариями).
|
|
Сообщ.
#5
,
|
|
|
|
При декомпиляции DeDe выдает ошибку "Stream read error" на самом последнем этапе.
|
|
Сообщ.
#6
,
|
|
|
|
Цитата BlackRaiDe @ При декомпиляции DeDe выдает ошибку "Stream read error" на самом последнем этапе. ![]() выкладай свой экзешник сюда, если он небольшой |
|
Сообщ.
#7
,
|
|
|
|
Да что его выкладывать, его любой желающий миожет скачать в инете.
Я ж хочу вырвать формы из Инфиума, разобраться в том какой параметр формы отвечает за что и сделать ресПатч для изменения внешнего вида под себя. Вот и все :-). Это ведь не затрагивает програмный код а потому, на сколько я знаю, не является нарушением авторских прав. Делаю же для себя. Выкладвыать, думаю, смысла нет. Его можно легко и тут скачать. Хотя, уверен у многих он и так есть. Если кто поможет достать формы и скинет куда нить в проекте буду благодарен )) Добавлено И все равно я подозреваю что у меня DeDe криво работает. Выбрал сохранение проекта отметив DFM PAS и DPR файлы. А он мне достал лишь DFM и сорцы. Пасов вообще нету.. |
|
Сообщ.
#8
,
|
|
|
|
BlackRaiDe какая версия?
у меня 3.50.04 отработал нормально. сохранил тоже все отменно. Правда не прикреплю ибо архив весит 2.3 мегабайта. |
|
Сообщ.
#9
,
|
|
|
|
ViktorXP, написал в приват)
|
|
Сообщ.
#10
,
|
|
|
|
Цитата BlackRaiDe @ Меня к вам переслали с другого Дельфи-форума. Никто тебя сюда не посылал, а посылали подальше, поскольку взломы противоречат политике сайта. Но ты почему то подумал, что сюда послали, как в помоечку, но это не так. |
|
Сообщ.
#11
,
|
|
|
|
Anatoly Podgoretsky,
вот уж не знал что доставание форм для респатча в своих домашних целях является взломом! И вообще. на главной странице того форума, нет ни слова про декомпиляцию. Правила ограничиваются лишь использованием нормативной лексики и правильным оформлением вопросов. А посему, прошу Вас, Anatoly Podgoretsky, либо помочь делу, либо не оставлять бесполезных коментариев. Кстати. Слышали о Delphi Russian Knowlege Base? наверняка знаете что это. А если не знаете, скажу Вам. Это наиболее полный и достоверный сборник информации и советов о Дельфи, который регулярно пополняется. Вот цитата из него.: Цитата Delphi Russian Knowlege Base Когда же применяется декомпиляция ? Для этого существует довольно много причин. Вот некторые из них: - Восстановление исходного кода; - Перенос приложения на другую платформу; - Определение наличия вирусов в коде программы или вредоносного кода; - Исправление ошибок в программе, в случае, если создатель приложения не собирается этого делать ![]() Легально ли всё это ? Хотя декомпиляция и не является взломом, но утвердительно ответить на этот вопрос довольно сложно. Обычно программы защищены законом об авторских правах, однако в большинстве стран на декомпиляцию делается исключение. В часности, когда необходимо изменить интерфейс программы, а сервис приложения не позволяет этого сделать. зы. На счет послали я выразился не верно. Мне посоветовали обратиться на ваш форум. Если вы форум считаете "помоечкой", дело Ваше И вообще, давайте жить дружно. Я не хочу ссориться ни с кем, вы тоже, я думаю.) Спасибо. |