Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];

Вниз

Как из 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.54 MB
Время: 0.043 c
14-1122352069
Думкин
2005-07-26 08:27
2005.08.28
Новосибирск-Бердск


4-1121333131
Pig Pen
2005-07-14 13:25
2005.08.28
Полупрозрачная форма


4-1120431833
cranium
2005-07-04 03:03
2005.08.28
Как получить список физических дисков и их тип


4-1120564476
[Savage]
2005-07-05 15:54
2005.08.28
Dump


4-1121334928
IceBeerg
2005-07-14 13:55
2005.08.28
Установка даты.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский