Как декомпилировать dll в visual studio

Обновлено: 07.07.2024

Вам когда-нибудь нужно было отлаживать или профилировать исполняемый файл (файл .exe), для которого у вас нет исходного кода или вы не можете его собрать? Тогда наименее известный тип проекта Visual Studio, проект EXE, для вас!

В Visual Studio вы можете открыть любой EXE-файл как «проект». Просто перейдите в Файл -> Открыть -> Проект/Решение и перейдите к файлу .exe . Как если бы это был файл .sln . Visual Studio откроет этот EXE-файл как проект. Эта функция существует уже давно. Она работает на всех поддерживаемых в настоящее время версиях Visual Studio, и документация по ней находится на странице Отладка приложения, которое не является частью решения Visual Studio.

Отладка

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


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

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

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

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

Я потерял решение библиотеки классов, могу ли я открыть файл .dll , созданный class-library .

Выполните следующие шаги.

  1. Перейдите в меню «Пуск».
  2. Введите Visual Studio Tool.
  3. Перейдите в указанную папку.
  4. Нажмите "Командная строка разработчика для VS 2013" в случае VS 2013 или просто «Командная строка Visual Studio» в случае VS 2010.
  5. После загрузки командной строки на экране типа ILDASM.EXE нажмите клавишу ВВОД.
  6. Откроется окно ILDASM. Перетащите файл .dll в окно из вашей папки. Или нажмите File->New . Затем добавьте необходимые .dll файл.
  7. После выполнения вышеуказанных шагов появится файл Mainfest и .dll. Дважды щелкните по этим файлам, чтобы увидеть, что в них содержится.

Перейдите в раздел "Просмотр" и нажмите "Надстройки",

В окне надстроек нажмите Добавить .

Тогда найдите dll, который вы скачали

FileGenerator.dll (с плагином FileGenerator),

Затем закройте окно надстроек.

Перейдите в «Файл», нажмите «Открыть» и выберите DLL, которую хотите декомпилировать,

После того, как вы откроете его, он появится в виде дерева,

Перейдите в Инструменты и нажмите Создать файлы (Crtl + Shift + G),

выберите выходной каталог и выберите соответствующие настройки по своему желанию, Нажмите «Создать файлы».

ИЛИ

Откройте файл .dll в Visual Studio. Или редактор ресурсов.

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

«Просто декомпиляция» Telerik - лучшее, что я использовал. Это бесплатно, как только вы зарегистрируетесь с электронной почтой.

*. dll файлы - это архивные файлы, открытые с помощью winzip /7zip и т. д. Это не означает, что все файлы .dll являются архивами, вы можете сохранить что угодно с расширением .dll, однако большинство файлов .dll Windows создаются как архивные примеры. Это windows> twain_32.dll, который является архивным файлом, однако twain.dll - это не так, если вы посмотрите на twain.dll, вы увидите MZŽ в качестве первых трех символов блокнота, обозначающих файл /программу скомпилированного C или часть программы. В то время как MZ кажется архивом.

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

У меня есть игра game.exe, и она содержит файлы классов java и указатель, указывающий .exe запустить файл .bat. Очевидно, что ваш файл .bat будет выполнять вызов javac из архива и запускать игру. Также есть несколько архивов .dll, содержащих файлы классов java.

стандартное перенаправление значка здесь .ico - это файл изображения в файле .dll в файле .exe. Таким образом, изображение в файле .exe является логотипом minecraft. Это в файле с именем autorun.inf. Второй пример

Этот размер файла будет меньше исходного файла того же содержимого. Однако размер файла больше, что говорит о том, что файл действительно был зашифрован. Вероятно, чтобы люди перестали читать их код. В результате чтение содержимого .dll называется расшифровкой, а не декомпиляцией. Декомпиляция преобразует уже скомпилированные текстовые файлы в нечитаемый байт-код. Использование стандартных файлов .dll по определению не является открытым исходным кодом, поскольку включает в себя преднамеренное запутывание байтового кода.

Динамическая библиотека (или DLL файлы) является основой традиционного программирования в Windows. Это внешние файлы данных, к которым обращаются различные программы (обращаются без постороннего вмешательства); так отпадает необходимость встраивать такие файлы в каждую программу. DLL файлы работают в фоновом режиме и обычный пользователь не имеет с ними дело. Однако, по той или иной причине может возникнуть необходимость открыть один из DLL файлов. Эта статья расскажет вам, как это сделать.

Метод 1 из 2: Использование DLL файлов

  1. 1 Динамическая библиотека (DLL файлы) – это внешние файлы данных, к которым обращаются программы для их нормального функционирования; так отпадает необходимость встраивать библиотеки в каждую программу.
    • Динамическая библиотека (DLL файлы) является основой традиционного программирования в Windows и позволяет создавать эффективные и небольшие программы.
  2. 2 DLL файлы работают в фоновом режиме и обычный пользователь не имеет с ними дело. Программы устанавливают и обращаются к DLL файлам автоматически, а их перемещение или удаление может привести к системным сбоям.
    • Иногда при установке программы вам может быть предложено установить дополнительные DLL файлы. Убедитесь, что программа получена из надежных источников, так как DLL файлы могут включать вредоносный код.
    • Если вы заинтересованы в создании DLL файлов, обратитесь к следующему разделу.
  3. 3 Зарегистрируйте новый DLL файл. Если вы установили DLL файл вручную (скопировали его в папку программы), возможно, вам потребуется зарегистрировать его, чтобы программа смогла работать с ним. Обратитесь к документации к программе, чтобы определить, что вам нужно регистрировать DLL файл (в большинстве случаев этого делать не нужно).[1]
    • Откройте командную строку. Нажмите «Пуск» – «Выполнить» (или нажмите Win + R) и введите cmd. Перейдите в каталог с новым DLL файлом.
    • В Windows 7 или более новой версии этой системы откройте папку, содержащую новый DLL файл, зажмите Shift, щелкните правой кнопкой мыши в папке и выберите «Открыть окно команд». Командная строка откроется непосредственно на текущем каталоге.
    • Введите regsvr32 dllname.dll и нажмите Enter. Это добавит DLL файл в реестр Windows.
    • Введите regsvr32 -u dllname.dll, чтобы удалить DLL файл из реестра Windows.

Метод 2 из 2: Декомпиляция DLL файлов

Как добавить DLL в Visual Studio?

Для Visual Studio 2019 вы можете не найти вариант Project -> Add Reference. Используйте Project -> Add Project Reference. Затем в диалоговом окне перейдите на вкладку Обзор и используйте Обзор, чтобы найти и прикрепить вашу dll.

Как просмотреть файл .DLL?

Если вы не можете найти файл DLL в своей системе, вот как вы можете просмотреть несколько файлов DLL на своем ПК:

  1. Перейдите в папку Windows. Он находится в папке Program Files.
  2. Внутри папки Windows перейдите в папку System 32.
  3. Здесь вы можете увидеть несколько. dll, используемые вашей системой.

Как распаковать файл DLL?

Как открыть файлы DLL для редактирования?

Часть 2 из 2: Редактирование DLL с помощью Hex Editor

Как декомпилировать DLL в Visual Studio?

  1. Редактор Dotnet IL (DILE)
  2. dotPeek.
  3. NET CodeReflect.
  4. Отражатель RedGate.
  5. телерик JustDecompile.
  6. IL. Вид.
  7. ILSpy.
  8. ILDasm.

Как создать файл DLL без Visual Studio?

Итак, шаги следующие:

  1. Создайте новую папку в inetpub под названием "vbc"
  2. Скопируйте в него файл vbc.exe.
  3. Откройте окно командной строки и обратите внимание на папку по умолчанию, в которой оно открывается.
  4. Скопируйте файл vbc. bat в эту папку, при необходимости исправив ее.

Вам не хватает справочника по сборке Visual Studio 2019?

Как добавить внешнюю DLL в проект Visual Studio?

Как установить DLL-файл?

Добавьте недостающий. DLL в Windows

Какая программа запускает файлы DLL?

Список программ, которые можно использовать для открытия файла DLL

Как создать файл DLL?

Как установить DLL-файл в Windows 10?

Зарегистрируйте 32- или 64-битные библиотеки DLL в Windows

Как открыть файл DLL на Android?

Открыть файл DLL

Как зарегистрировать файл DLL в 64-разрядной версии Windows 10?

Читайте также: