Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.28;
Скачать: CL | DM;

Вниз

Как из DLL и EXE-файлов вытащить исходный код?   Найти похожие ветки 

 
StarCarfter   (2005-08-03 13:24) [0]

Хочу создать серьезный мод для Старика. Однако StarDraft и прочее не позволяют вносить серьезные изменения в игру. Можно ли как-то отредактировать DLL-файлы Старкрафта(да и вообще, любой программы?).


 
Kerk ©   (2005-08-03 13:29) [1]

StarCarfter   (03.08.05 13:24)
Можно ли как-то отредактировать DLL-файлы Старкрафта(да и вообще, любой программы?).


Можно.
Берешь hex-редактор, дизассемблер и вперед.


 
StarCarfter   (2005-08-03 13:32) [2]

Kerk, большое конечно спасибо, но что такое hex-редактор и диасимблер? Нет ли одной универсальной утилиты? Нажал "выбрать DLL" --- В исходный код?


 
Kerk ©   (2005-08-03 13:33) [3]

Нету


 
Gydvin ©   (2005-08-03 13:34) [4]

Ух ты какой хитрый:)


 
StarCarfter   (2005-08-03 13:35) [5]

Слушай, у меня установлена Delhpi 6. Есть ли там эта функция, а то вся справка на чертовом английском...


 
Digitman ©   (2005-08-03 13:36) [6]


> Нажал "выбрать DLL" --- В исходный код?


в КАКОЙ "исходный код" ?

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


 
Skyle ©   (2005-08-03 13:36) [7]

Это развод? Если так, то очень неоригинально...


 
StarCafter   (2005-08-03 13:37) [8]

Удалено модератором


 
StarCarfter   (2005-08-03 13:38) [9]

Но ведь DLL - это набор функций, процедур и т.д., которые по особому алгоритму преобраазуются в библиотеку. Но если есть алгоритм File -> DLL значит должен быть и DLL -> File?


 
Skyle ©   (2005-08-03 13:39) [10]

> [8] StarCafter   (03.08.05 13:37)
Вот и я думаю...
Помимо всего прочего энтузиаст мог бы хоть название игры написать без ошибок...;-)


 
StarCarfter   (2005-08-03 13:39) [11]

Не развоД! StarCarfter (03.08.05 13:37) - это не я.


 
pasha_golub ©   (2005-08-03 13:40) [12]

StarCarfter   (03.08.05 13:38) [9]

Есть преобразование a + b = c

Так вот, я тебе щас дам значение c, а ты мне найдешь значение a и b? Идет?

Если получится, то к завтрему напишу тебе доставальщик кода.


 
Skyle ©   (2005-08-03 13:41) [13]

> [8] StarCafter   (03.08.05 13:37)
> [11] StarCarfter   (03.08.05 13:39)
Может мы уйдём, а вы тут поговорите? ;-)


 
StarCarfter   (2005-08-03 13:41) [14]

Да, Skyle, в спешке чего только не наделаешь... Я ведь в инет-кафе. Так что же, ДЛЛ-редактировать получается нельзя? Я слышал о утилите Reostator...


 
Gydvin ©   (2005-08-03 13:43) [15]

Один из самых универсальных дизассемблеров - IDE


 
Игорь Шевченко ©   (2005-08-03 13:44) [16]

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


 
имя   (2005-08-03 13:44) [17]

Удалено модератором


 
Skyle ©   (2005-08-03 13:44) [18]

> 14] StarCarfter   (03.08.05 13:41)
Реостатор - это наверное для управления реостатами..
От того, что ты будешь торопиться, ответ раньше не появится...;)

Утилита Restorator, как и все подобные редакторы ресурсов не предназначена и не может вытаскивать исходные тексты. Потому что (если это не программа по методике АП) их там нет.
А угадать - это в [12].


 
StarCarfter   (2005-08-03 13:49) [19]

Спасибо, всем, хотя польза только от Skyle. А так хотелось заглянуть в исходники StarCarfta, может, тогда бы получился крутой мод :((


 
pasha_golub ©   (2005-08-03 13:54) [20]

StarCarfter   (03.08.05 13:49) [19]
Каждый видит пользу в своем. Кто-то паяльником шурупы закручивает...


 
Digitman ©   (2005-08-03 14:00) [21]


> так хотелось заглянуть в исходники StarCarfta


так тебе разработчики StarCarfta и предоставили исходники !)))


 
Skyle ©   (2005-08-03 14:00) [22]

> [20] pasha_golub ©   (03.08.05 13:54)
Не знаю, какая от меня польза, но для меня есть - немного повеселился...;-)


 
pasha_golub ©   (2005-08-03 14:03) [23]

Skyle ©   (03.08.05 14:00) [22]
А я почему-то думаю, что это неудавшаяся шутка... :)


 
Skyle ©   (2005-08-03 14:04) [24]

> [23] pasha_golub ©   (03.08.05 14:03)
Ну дык я не над шуткой смеялся ([7]), а скорее над шутником..;-)


 
Dok_3D ©   (2005-08-03 15:15) [25]

Смотри в MSDN:

 ExtractCodeFromExe
 ExtractCodeFromDll


 
evvcom ©   (2005-08-03 15:24) [26]


> Один из самых универсальных дизассемблеров - IDE

IDE? Или все же IDA имелся в виду?

> так хотелось заглянуть в исходники StarCarfta

И что бы ты там увидел?


 
syte_ser78 ©   (2005-08-03 15:49) [27]

StarCarfter   (03.08.05 13:32) [2]
Конечно же есть. Зовется MakerBestModForCtarCraft
Открываешь ддл-ку жмеш.
Мод\Создать В появившемся окошке выбираешь Серьезный (по умолчанию стоит НеСерьезный)
Все.


 
Gydvin ©   (2005-08-03 16:11) [28]

evvcom ©   (03.08.05 15:24) [26]
IDE? Или все же IDA имелся в виду?
да


 
oldman ©   (2005-08-03 16:19) [29]

имхо (если память не изменяет) имена переменных не компиляться...
Если на форме одна кнопка и много-много мат.кода, то флаг вам в руки разобраться в полученной распечатке...


 
[wl]   (2005-08-03 16:38) [30]

oldman ©   (03.08.05 16:19) [29]
а кто сказал, что StarCraft написан на делфи?


 
evvcom ©   (2005-08-03 16:52) [31]


> а кто сказал, что StarCraft написан на делфи?

А кто вообще обсуждал StarCraft? Обсуждался StarCarft какой-то. :)


 
evvcom ©   (2005-08-03 16:55) [32]


> имена переменных не компиляться...

Что значит не компилятся? Компилируется исходный код (текст), а имена переменных могут быть записаны в откомпилированный файл, а могут быть и не записаны.

> Если на форме одна кнопка и много-много мат.кода, то флаг
> вам в руки разобраться в полученной распечатке...

А печатать-то зачем? И зачем разбираться во всем коде?


 
NeyroSpace ©   (2005-08-04 12:17) [33]

КЦ ацтой!
Пиши мод под BattleField 1942.
Там свой скриптовый язык + все тулзы разработчика есть.


 
Е-клмн ©   (2005-08-04 23:27) [34]

Напиши письмо разработчикам. Обрисуй, как и что. Поплачься – они люди добрые - исходники вышлют.


 
Юрий Зотов ©   (2005-08-05 01:02) [35]

Думаю, все же лучше потратить время на архитектурный институт...


 
pasha_golub ©   (2005-08-05 01:13) [36]

Юрий Зотов ©   (05.08.05 01:02) [35]
Или цирковое училище.


 
Petr V. Abramov ©   (2005-08-05 02:01) [37]

> Юрий Зотов ©   (05.08.05 01:02) [35]
> Думаю, все же лучше потратить время на архитектурный институт...
 Должность "архитектор программного обеспечения" ныне востребована и оплачиваема :)


 
yurique   (2005-08-05 02:52) [38]

StarCarfter, ну и тему ты открыл. не думал, что такое можно обсуждать.

>Нажал "выбрать DLL" --- В исходный код?

>Но ведь DLL - это набор функций, процедур и т.д., которые по особому алгоритму преобраазуются в библиотеку

с процедурами, функциями и т.д. работаешь ты.. ну и все тут наверно :) а вот проц работает с регистрами, простыми коммандами (скопировать значение, умножить, отнять и т.д.) над этими самыми регистрами и памятью, ну и ещё много с чем, но это уже не интереснро.. так вот компилятор переводит с языка, с которым работаешь ты, на язык, с которым работает проц.. и вместо

procedure add;
var x, y, zu: integer;
begin
x :=10;
y :=20;
zu=x+y;
end;

полчучается что-то такое:

mov eax,$0000000a
mov edx,$00000014
lea esi,[edx+eax]

ну как, восстановишь из второго первое? ; ) с названиями переменных и процедуры?

зы: а супер мод к старику ты тоже в и-нет кафе сделать надумал? ; )


 
pasha_golub ©   (2005-08-05 03:00) [39]

yurique   (05.08.05 02:52) [38]
Учитель, я так долго искал Вас. Вы открыли мне путь джедайа. :0)

А серьезно компилятор такое делает с кодом? А можно ему как-нибудь сказать, чтобы он использовал мои переменные, из кода? И вообще, можно отключить эти регистры, комманды и непонятные числа $0000000a? А то, что же это получается, я пишу, пишу, а оно все псу под хвост?



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

Текущий архив: 2005.08.28;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.052 c
1-1123242234
Гость22
2005-08-05 15:43
2005.08.28
У кого-нить есть модуль, чтоб делал дату прописью?


8-1113919174
MAXIMUM666
2005-04-19 17:59
2005.08.28
Зацикливание


14-1123227092
Lexer
2005-08-05 11:31
2005.08.28
Домен (сеть компании) + рабочая группа (инет кафе)


3-1121342988
Pil
2005-07-14 16:09
2005.08.28
формирование отчетов


10-1101131714
Fill
2004-11-22 16:55
2005.08.28
Outlook