Как получить исходный код исполняемого файла Windows?

У меня есть некоторые старые исполняемые файлы Windows. Как я могу отредактировать их с Visual Studio 2010? Что пути состоят в том, чтобы видеть исходный код exe?

17
задан MPelletier 5 May 2012 в 21:58
поделиться

5 ответов

Вы не можете получить исходный код C ++ из exe, и вы можете получить только некоторую версию исходного кода C # через отражение. Судя по тому, как вы задали вопрос, от них не будет особой пользы.

24
ответ дан 30 November 2019 в 10:43
поделиться

Если программа была написана на C #, вы можете получить исходный код в почти его исходной форме, используя .NET Reflector . Вы не сможете увидеть комментарии и имена локальных переменных, но они очень удобочитаемы.

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

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

19
ответ дан 30 November 2019 в 10:43
поделиться

Если это собственный код, вы можно его разобрать. Но вы не увидите, что исходный код написан программистом. Вы увидите код, созданный компилятором (ассемблером). Этот код, возможно, оптимизирован и, хотя он семантически эквивалентен, его может быть намного сложнее читать, чем обычный ASM.

Если это байт-код (MSIL или javabytecode), есть декомпилятор, который может создать довольно хороший исходный код. Для .net это будет отражатель.

6
ответ дан 30 November 2019 в 10:43
поделиться

Я бы использовал (и использовал) IDA Pro для декомпиляции исполняемых файлов. Он создает полузаполненный код, который можно декомпилировать в сборку или C.

Если у вас есть копия отладочных символов, загрузите их в IDA перед декомпиляцией, и он сможет назвать многие функции, параметры и т. Д. .

3
ответ дан 30 November 2019 в 10:43
поделиться

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

Это в значительной степени случайный сценарий.

Кто-то уже спрашивал об этом на другом сайте

0
ответ дан 30 November 2019 в 10:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: