как посмотреть код программы exe в visual studio

Как отлаживать и профилировать любой EXE-файл с помощью Visual Studio

как посмотреть код программы exe в visual studio

Отладка

Как и в обычном проекте, вы можете начать отладку с помощью F5, которая запустит EXE и подключит отладчик. Если вы хотите отладить запуск, вы можете запустить с помощью F11, который запустит EXE и остановится на первой строке пользовательского кода. Оба эти параметра доступны в контекстном меню для проекта EXE в окне Solution Explorer, как показано ниже:

как посмотреть код программы exe в visual studio

Для отладки понадобятся символы, файлы PDB, для EXE и любых DLL, которые нужно отладить. Visual Studio будет следовать тому же процессу и попытается получить символы также, как и при отладке обычного проекта. Поскольку маловероятно, что файлы PDB были распространены вместе с EXE-файлом, возможно, вы захотите найти их в сборке или, что еще лучше, на сервере символов. Дополнительную информацию и рекомендации по использованию символов можно найти в этом блоге.

Для эффективной отладки вам также понадобится исходный код, который использовался для сборки EXE, или даже для нескольких файлов, которые вас интересуют. Вам нужно найти эти файлы и открыть их в Visual Studio. Если исходный код не совпадает с исходным кодом, который был собран, EXE Visual Studio предупредит вас, когда вы попытаетесь вставить точку останова, и точка останова не будет привязана. Это поведение может быть изменено в окне Settings peek window. В окне просмотра параметров щелкните текст ссылки Must match source, а затем установите флажок, чтобы разрешить несоответствующий источник, как показано ниже. Конечно, с несоответствующим источником вы никогда не знаете, что произойдет, так что используйте это только на свой страх и риск.

как посмотреть код программы exe в visual studio

Если EXE был собран с SourceLink, то информация об источнике будет включена в PDB, и Visual Studio попытается загрузить источник автоматически. Это действительно хорошая причина использовать SourceLink с вашими проектами. Даже если у вас есть локальный набор, у вас может не быть той версии, которая использовалась для сборки двоичного файла. SourceLink — ваш надежный способ убедиться, что правильный источник связан с правильным двоичным файлом.

Если вы не можете получить исходный код, у вас еще есть несколько вариантов:

Источник

Как извлечь код программы из ехе файла?

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Можно ли как-нибудь из ехе-файла получить дизассемблированый код
Можно ли как нибудь из ехе файла получить дизассемблированый код на FASM\MASM?

как посмотреть код программы exe в visual studioКак узнать исходный код файла-ЕХЕ для Visual Basic 6.0?
Здравствуйте! Прошу помощи. Как узнать P-Code? Научите, пожалуйста, пользоваться компиляторами и.

Как средствами Delphi реализовать извлечение ехе файла при запуске ехе?
Здорова, народ. Как средствами Delphi реализовать извлечение ехе файла при запуске ехе? Заранее.

как посмотреть код программы exe в visual studio
смешно, хоть и флуд.

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

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

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

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

ну вот сейчас вменяемое объяснение. это так сложно сразу нормально писать.
То что можно только повторить примерный листинг пользуясь диззасемблером/декомпилятором это и говорилось автору сразу, но он сам этого мало понимает в силу своих очень скудных познаний (да и интелектуальный потенциал этого индивида тоже вызывает сомнения)
>>1)автор хочет исходник для Студии; от бишь с шаблонами диалогов, ДОТНЕТОМ, и прочими финтифлюшками. это специфические реализации С++

с++ это не дотнет, дотнетовские проги просматриваются CLR просмоторщиками (который входит в состав студии)

Источник

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Вложения

как посмотреть код программы exe в visual studiomopr_laba_5_file_2.rar (11.8 Кб, 256 просмотров)

майн код как посмотреть код программы exe в visual studioспасибо большое

Добавлено через 2 минуты
только он ен полный почему то как посмотреть код программы exe в visual studio

Решение

Вложения

как посмотреть код программы exe в visual studiolab3.rar (3.5 Кб, 54 просмотров)

То есть в моем случае это невозможно? интересно. а от чего это может зависеть?

Добавлено через 1 час 2 минуты

То есть в моем случае это невозможно? интересно. а от чего это может зависеть?

Добавлено через 1 час 2 минуты

Все разобралась. Зеленая рамка у меня выскакивала когда я заносила проект в Visual. Но можно и на прямую, как вы и описали через саму программу декодировки

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Достать код досовской программы для редактирования
Есть программа написанная под дос, нужно достать код чтобы поменять ввод суммы. Сейчас она.

Изъять код программы из *.exe на VBA 6.0
Помогите пожалуйсто. Существуют ли способы ‘вытаскивания’ программного кода написанного на VBA 6.0.

Источник

Статья Как изменить код программы без исходника

Как изменить код программы, если потерян исходник

Бывают ситуации, когда под рукой нет исходника, а Вам срочно требуется внести изменения в коде, написанной ранее Вами программы. Например, дано приложение «TextEdit.exe» — текстовый редактор, написанный на языке c#, который имеет простой пользовательский интерфейс, состоящий из двух кнопок и текстового поля.

как посмотреть код программы exe в visual studio

При нажатии на кнопку “Чтение” из файла 1.txt считываются и выводятся все строки в окно элемента управления textBox, а при нажатии на кнопку “Запись” данные из текстового поля сохраняются в файле 2.txt

Для хранения путей в программе используются две текстовых переменных: filePathIn и filePathOut

как посмотреть код программы exe в visual studio

Прошёл год, как программа была написана и отдана заказчику, но вдруг ему потребовалось изменить имя папки, в которой должны храниться оба файла, c 123 на Text. Задача простая, но прошло уже много времени, и исходник был потерян, что делать в такой ситуации?

как посмотреть код программы exe в visual studio

Полученный в результате компиляции файл (сборка) содержит внутри себя метаданные, манифест, код на языке IL (MSIL).

Метаданные — описывают типы данных и их члены

Манифест описывают саму сборку

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

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

Данный инструмент входит состав пакета .Net Framework SDK, который является бесплатным и устанавливается вместе с Visual Studio (включая Express версию). С помощью него вы можете, как просматривать внутреннее содержимое сборки, так и изменять его.

Для удобства работы создадим отдельную папку, например: ”c:\newasm” и поместим в неё файл TextEdit.exe

как посмотреть код программы exe в visual studio

Затем в меню “Пуск” открываем папку: «Visual Studio Tools»

как посмотреть код программы exe в visual studio

Запускаем командную строку разработчика

как посмотреть код программы exe в visual studio

Откроется консоль, вводим первую команду: ildasm. Для выполнения команды нажмите клавишу Enter.

как посмотреть код программы exe в visual studio

Появиться главное окно программы.

как посмотреть код программы exe в visual studio

Переместим файл сборку TextEdit.exe в окно дизассемблера ILASM, в результате отобразиться её внутреннее содержимое.

как посмотреть код программы exe в visual studio

Убедимся, что в ней содержатся нужные нам данные (пути к файлам).

как посмотреть код программы exe в visual studio

Два поля на месте, теперь взглянем на метаданные.

как посмотреть код программы exe в visual studio

Для доступа к метаданным Вы так же можно использовать сочетание горячих клавиш: Ctrl+M. Затем с помощью кнопки Find, найдём имя одного из файлов.

как посмотреть код программы exe в visual studio

как посмотреть код программы exe в visual studio

как посмотреть код программы exe в visual studio

Как видно присутствуют оба. Пути найдены, и теперь их нужно изменить, но все данные, в текущий момент, доступны только для просмотра, и изменить их в самой дизассемблере нельзя, поэтому воспользуемся второй возможностью данной программы и выгрузим содержимое сборки в файл.

как посмотреть код программы exe в visual studio

Появится меню. В данном примере, все пункты меню оставим без изменений и просто нажмём кнопку OK.

как посмотреть код программы exe в visual studio

Появится диалоговое окно

как посмотреть код программы exe в visual studio

Выберем ранее созданную папку “newasm”, затем укажем имя и тип файла и нажмём на кнопку “Сохранить”

как посмотреть код программы exe в visual studio

В результате в папке “newasm” должно появиться несколько новых файлов

как посмотреть код программы exe в visual studio

Закрываем окно ildasm, а так же удаляем файл Textedit.exe, больше он нам не понадобиться. Теперь нас интересует полученный файл texted.il и для начала откроем его любым текстовым редактором, например блокнотом.

как посмотреть код программы exe в visual studio

Снова воспользуемся поиском (Ctrl+F)

как посмотреть код программы exe в visual studio

Так же видим найденные строки, которые содержат пути к файлам.

как посмотреть код программы exe в visual studio

Изменим текущее имя папки 123 на новое название Text, для обоих файлов

как посмотреть код программы exe в visual studio

Сохраняем внесённые изменения и закрываем блокнот.

Изменения внесены и теперь нужно преобразовать файл txted.il обратно в исполняемый файл (.exe) Для этого нам понабиться второй инструмент ILASM, ассемблер, который так же входит в состав пакета SDK и не требует отдельной установки.

Возвращаемся в консоль

как посмотреть код программы exe в visual studio

Вводим вторую команду:

как посмотреть код программы exe в visual studio

Если компиляции прошла успешно, то в окне консоли вы должны увидеть сообщение, которое выделено на картинке, а внутри папке “newasm” должен появиться новый файл TextEdit.exe, который теперь уже содержит новые пути к файлам.

как посмотреть код программы exe в visual studio

Вот таким не сложным способом можно выйти из данной ситуации, при этом не имея исходника под рукой.

Вложения

как посмотреть код программы exe в visual studio

как посмотреть код программы exe в visual studio

The Codeby

как посмотреть код программы exe в visual studio

The Codeby

ООО Кодебай

Сергей
Четверг на 02:09
Здравствуйте, когда пытаюсь открыть файл exe в редакторе LD DASM у меня появляется ошибка «отсутствует допустимый заголовок CLR поэтому дизассемблирование невозможно» что это? и можно как нибудь исправить?

admin
Пятница на 10:09
Программа (файл) на каком языке написана?

Иван
Суббота на 10:09
Добрый день. Такая же ситуация. Пытаюсь открыть файл exe в редакторе LD DASM у меня появляется ошибка «отсутствует допустимый заголовок CLR поэтому дизассемблирование невозможно». Файл написан на Delphi.

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

Иван
Понедельник на 12:09
А как-то нормально можно посмотреть код, если есть уже окончательный exe и несколько dll проекта?

Иван
Среда на 03:09 ПП
Ну чтобы взять код себе в другой проект

admin
Четверг на 11:09
Есть вроде какие-то, но не помню названия, потому что не использую их.

Анатолий
Четверг на 12:02 ПП
Можете, помочь как я хочу переписать лаунчер для игры, что бы изменить проверку файлов но не могу никак открыть его. Пробывал через ресторатор 2007 но оно не может прочитать пату файлов точнее отобразить язык.

Источник

Создание исходного кода

Если при выполнении отладки исходный код недоступен, в Visual Studio отображается документ Исходный код не найден, а если отсутствуют символы для сборки, отображается документ Символы не загружены. Оба документа имеют параметр Декомпилировать исходный код, который создает код C# для текущего расположения. Созданный код C# можно использовать так же, как любой другой исходный код. Можно просматривать этот код, проверять переменные, устанавливать точки останова и т. д.

Символы не загружены

На следующем рисунке показано сообщение Символы не загружены.

как посмотреть код программы exe в visual studio

Исходный код не найден

На следующем рисунке показано сообщение Исходный код не найден.

как посмотреть код программы exe в visual studio

Создание и внедрение исходного кода для сборки

как посмотреть код программы exe в visual studio

Извлечение и просмотр внедренного исходного кода

Исходные файлы, внедренные в файл символов, можно извлечь с помощью команды Извлечь исходный код в контекстном меню окна Модули.

как посмотреть код программы exe в visual studio

Извлеченные исходные файлы добавляются в решение как прочие файлы. В Visual Studio функция «Прочие файлы» по умолчанию отключена. Чтобы включить эту функцию, установите флажок Инструменты > Параметры > Среда > Документы > Показывать прочие файлы в Обозревателе решений. Без включения этой функции вы не сможете открыть извлеченный исходный код.

как посмотреть код программы exe в visual studio

Извлеченные исходные файлы отображаются в разделе прочих файлов в Обозревателе решений.

как посмотреть код программы exe в visual studio

Известные ограничения

Требуется режим прерывания выполнения

Создание исходного кода с помощью декомпиляции возможно только в том случае, если отладчик находится в режиме прерывания выполнения и приложение приостановлено. Например, Visual Studio переходит в режим прерывания, попадая в точку останова или в исключение. Вы можете легко активировать прерывание выполнения Visual Studio при следующем запуске кода с помощью команды Прервать все (как посмотреть код программы exe в visual studio).

Ограничения декомпиляции

Отладка оптимизированных сборок или сборок выпуска

При отладке кода, декомпилированного из сборки, которая была скомпилирована с использованием оптимизаций компилятора, вы можете столкнуться со следующими проблемами:

Дополнительные сведения можно найти в описании проблемы GitHub Интеграция ICSharpCode.Decompiler с отладчиком VS.

Надежность декомпиляции

Относительно небольшой процент попыток декомпиляции может привести к сбою. Это происходит из-за ошибки пустой ссылки точки последовательности в ILSpy. Мы устранили этот сбой путем перехвата таких проблем и корректного завершения попытки декомпиляции.

Дополнительные сведения можно найти в описании проблемы GitHub Интеграция ICSharpCode.Decompiler с отладчиком VS.

Ограничения при работе с асинхронным кодом

Результаты декомпиляции модулей с шаблонами кода async/await могут быть неполными или неудачными в целом. Шаблоны кода async/await и машины состояния yield state-machine в ILSpy реализованы только частично.

Дополнительные сведения можно найти в описании проблемы GitHub Состояние генератора PDB.

Только мой код

Параметры режима Только мой код (JMC) позволяют Visual Studio выполнять шаг с обходом системы, платформы, библиотеки и других вызовов непользовательского кода. Во время сеанса отладки в окне Модули отображаются модули кода, которые отладчик воспринимает как «Мой код» (т. е. пользовательский код).

Извлеченный исходный код

Исходный код, извлеченный из сборки, имеет следующие ограничения.

Создается только код C#

При декомпиляции создаются только файлы исходного кода на C#. Возможность создавать файлы на каком-либо другом языке отсутствует.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *