Перейти к содержанию

Декомпиляция приложений и работа и исходным кодом


Рекомендуемые сообщения

У меня есть програмка. Немаленькая, но удаленькая. Её писали студенты или индусы, ибо оптимизации = 0; 

Хочу её вскрыть, посмотреть на исходники. Вскрыл JetBrains -> .Net Picks, но при открытии проекта в студии (13, ultimate, обновление 4) выскакивает много ошибок и её невозможно перекомпилировать.

Можно ли как-то убрать все эти ошибки? Откуда они появляются?

http://youtu.be/ddH2khIRkSU

P.s. То, что я хотел скзатаь в конце: "Дата ожидания ответа от сервера превышена".

Изменено пользователем RockHammer
Ссылка на комментарий
Поделиться на другие сайты

Предположу, что программа написана на .NET. В этом случае, с чего бы ей компилироваться из исходников, которые ты достал сторонней утилитой из собранного бинарника? Там может не быть, например, ресурсов. Или сторонних либ. Или луна не в ту фазу встала. Ошибки для начала рекомендуется читать.

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

Предположу, что программа написана на .NET. В этом случае, с чего бы ей компилироваться из исходников, которые ты достал сторонней утилитой из собранного бинарника? Там может не быть, например, ресурсов. Или сторонних либ. Или луна не в ту фазу встала. Ошибки для начала рекомендуется читать.

 

MAu0JQb.png

Изменено пользователем RockHammer
Ссылка на комментарий
Поделиться на другие сайты

У меня это почему-то заняло 1.5 минуты времени.

за 1.5 минуты многое может произойти. Сердце сократится 120 раз, кровь пройдет в общей сложности 9 км, легкие успеют перекачать 1 кубометр воздуха... 

 

P.s. как это воткнуть в исходник? в с++ нужно было пути указывать, а  тут такого нет.

Изменено пользователем RockHammer
Ссылка на комментарий
Поделиться на другие сайты

Так ты сядь и [почитай], что это такое и как работает. Как ты код пишешь, если не знаешь основ?

Дык код не я писал, в шапке указано.

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

Дык я тебя и не про конкретно этот код спрашивал, а вообще. Как ты можешь писать хоть что-то на шарпе, если ничего толком про него не знаешь? Сядь поизучай, дело пойдет куда быстрее.

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

Дык я тебя и не про конкретно этот код спрашивал, а вообще. Как ты можешь писать хоть что-то на шарпе, если ничего толком про него не знаешь? Сядь поизучай, дело пойдет куда быстрее.

А что конкретно изучать?

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

1. Для декомпиляции попробуй ILSpy

2. Я не знаю ни одного декомпилятора .net, который бы гарантированно декомпилировал бы без ошибок  Все ошибки придется исправлять самому

3. Ты можешь попросить исходники у авторов программы

4. Чужой код тырить плохо  :(

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

3. Ты можешь попросить исходники у авторов программы

4. Чужой код тырить плохо  :(

Авторы программы это делали на фрилансе, исходники у них, а они на семи горах с ... в зубах... 

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

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

Не проще ли в таком случае написать свой аналог, а не ковыряться в чужом коде? В зависимости от размеров проекта, чаще всего последнее - самый трудный вариант.

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

Не проще ли в таком случае написать свой аналог, а не ковыряться в чужом коде? В зависимости от размеров проекта, чаще всего последнее - самый трудный вариант.

Написать заново - мне за это не платят.

Да и не посвящен я в тайны этой программы. Могу лишь догадыватсья что она делает...

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

Так а зачем тебе тогда вытаскивать исходный код, если ты даже не знаешь, что программа делает? Что-то ты темнишь, сударь.

Для того и хочу вытащить, посмотреть что у неё "в кишках" творится. Но пока я встретил только незнакомый и недокументированный код... Многабукав! (единственное описание моему чувству)

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

Еще раз. Функционал программы - это то, что программа делает для пользователя. Для того, чтобы быть в курсе функционала, необязательно лезть в исходный код. Например, тебе не нужны исходники, чтобы знать, что скайп предназначен для звонков и общения, Хром - для ползания по интернету, любая игра - для того, чтобы в нее играть. И если ты вообще не знаешь, что именно делает программа в отношении пользователя, если ты не знаешь, какие именно возможности она пользователю предоставляет - получив исходный код ты тем более не поймешь в нем ничего. Учитывая твои невысокие знания в "решетках" - тем более. И да, в декомпилированном коде никогда не будет "документирования" и комментариев, так как они отбрасываются на этапе компиляции, потому что они нужны программисту, а не процессору, который в конечном итоге будет исполнять скомпилированные инструкции.

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

Еще раз. Функционал программы - это то, что программа делает для пользователя. Для того, чтобы быть в курсе функционала, необязательно лезть в исходный код. Например, тебе не нужны исходники, чтобы знать, что скайп предназначен для звонков и общения, Хром - для ползания по интернету, любая игра - для того, чтобы в нее играть. И если ты вообще не знаешь, что именно делает программа в отношении пользователя, если ты не знаешь, какие именно возможности она пользователю предоставляет - получив исходный код ты тем более не поймешь в нем ничего. Учитывая твои невысокие знания в "решетках" - тем более. И да, в декомпилированном коде никогда не будет "документирования" и комментариев, так как они отбрасываются на этапе компиляции, потому что они нужны программисту, а не процессору, который в конечном итоге будет исполнять скомпилированные инструкции.

В решетках я действительно не силен, мне более понятен с++, чем решетка.

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

В решетках я действительно не силен, мне более понятен с++, чем решетка.

offtopic.gif Я бы и здесь поспорил) Решетки, если что, гораздо проще плюсов.
Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.