Инструмент JetBrains dotPeek 2021.3.2: Декомпилятор .NET


Инструмент JetBrains dotPeek для декомпиляции был первоначально представлен компанией Microsoft. Это бесплатный, автономный инструмент и декомпилятор для сборок .NET. Он преобразует сборки .NET в эквивалентный код C# и, по желанию, показывает лежащий в основе код IL. Приложение dotPeek может декомпилировать различные типы файлов сборок, такие как библиотеки (.dll), исполняемые файлы (.exe), файлы метаданных Windows 8 (.winmd), архивы (.zip), пакеты NuGet (.nupkg) и пакеты Microsoft Visual Studio Extensions (.vsix).

JetBrains DotPeek 2021.3.2

Разработчики могут использовать JetBrains dotPeek для декомпиляции сборок .NET на базе .NET Framework в эквивалентный код C#.

Каковы особенности декомпилятора JetBrains dotPeek 2021.3.2?

Ниже приведен список возможностей, которые разработчики могут использовать в инструменте JetBrains dotPeek .NET.

Просмотр исходного кода, если он доступен

DotPeek может генерировать файлы PDB. Декомпилированный код .NET, сгенерированный dotPeek, можно использовать для сопоставления сборки с ее исходным кодом. Этот инструмент позволяет разработчикам загружать код с удаленного сервера.

JetBrains DotPeek. Этот инструмент позволяет разработчикам загружать код с удаленного сервера
Навигация и опции декомпилятора

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

Как разработчик, мы можем захотеть показать или скрыть сгенерированный компилятором код, созданный этим декомпилятором .NET. Мы можем показать определенные преобразования компилятора, создавая таким образом структуру кода, которую отображает dotPeek. Эта функция помогает увидеть, как компилятор работает с ламбдами, закрытиями и автосвойствами, среди прочего.

Изучение запущенных процессов

В окне Process Explorer инструмента декомпилятора кода отображается список всех запущенных в данный момент процессов. Разработчик может исследовать их и декомпилировать все сборки .NET. Разработчик может выбрать, показывать или скрывать родные процессы и модули, или включить представление иерархии процессов. Вы также можете отфильтровать список, чтобы найти нужный модуль или процесс.

Обозреватель процессов
Обозреватель процессов

Просмотр IL-кода в отдельном представлении

Разработчик может перейти к IL-коду из любой точки декомпилированного кода C#. Эта возможность необходима для более глубокого погружения в исходный код. Инструмент dotPeek предоставляет простой способ показать IL-код в отдельном окне инструмента, синхронизированном с основным средством просмотра кода.

Просмотр IL-кода в виде комментариев к декомпилированному C#

Разработчик также может выбрать отображение IL-кода в виде комментариев к декомпилированному коду C#. DotPeek может отображать IL-код как для декомпилированного кода, так и для исходного кода, воспроизведенного из символьных файлов.

Предпочтительная цветовая тема

DotPeek поддерживает несколько цветовых тем, как, например, редактор Visual Studio. Разработчики могут выбрать тему Blue или Dark, или синхронизировать свои предпочтения по цветовой схеме с настройками Visual Studio.

Как использовать символы в dotPeek

В dotPeek вы можете найти все случаи использования символа (например, метода или свойства) во всех загруженных сборках. Использования будут отображены в окне инструмента Find Results, где их можно группировать, перемещаться между ними и открывать в области просмотра кода.

Существует также функция Find Usages Advanced, которая представляет собой более подробную версию Find Usages, позволяющую точно настроить критерии поиска, ограничив область поиска и другие детали.

Выделение использований в средстве просмотра кода

DotPeek автоматически выделяет все видимые использования символа под кареткой, очень похоже на то, как это делают последние версии Visual Studio. Это помогает улучшить читабельность декомпилированного кода.

Выделение использований в средстве просмотра кода

Переход к любому коду

DotPeek предоставляет две функции для быстрого перехода к определенному коду:

  • Go to Symbol: Помогает перейти к объявлению конкретного символа, который может быть типом, методом, полем или свойством.
  • Go to Everything: позволяет найти сборку, пространство имен, тип, член или недавно открытый файл.
Переход к любому коду

Создание закладок в DotPeek

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

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

Навигация в декомпиляторе кода

DotPeek поддерживает контекстную навигацию и навигацию по иерархии классов. Go to Declaration позволяет перейти от использования любого символа к его объявлению. Go to Implementation помогает перейти к конечным реализациям типов и членов типов, минуя промежуточные этапы наследования в цепочке наследования.

Изучение цепочек наследования

DotPeek покажет вам все типы, которые наследуются от выбранного типа, а также типы, которые наследует он сам.

Управление списками сборок в .NET

Разработчик может работать с различными списками сборок в зависимости от контекста. Списки сборок можно сохранять и открывать заново, а также очищать текущий список, если он вам больше не нужен.

Изучение содержимого сборки

Проводник сборок показывает, какие ссылки, ресурсы и код содержит конкретная сборка, начиная с пространств имен и заканчивая членами типа.

Изучение метаданных сборки

DotPeek поможет вам изучить метаданные сборки и найти все элементы (таблицы, блобы, строки и т.д.) внутри нее. В узле Metadata можно изучить значения элементов блобов, заголовки PE-файлов и использование элементов таблицы метаданных.

Заключение к учебнику по декомпилятору .NET кода DotPeek

Я надеюсь, что эта статья о dotPeek дала вам базовое понимание того, как использовать инструмент декомпилятора .NET.

Заключение к учебнику по декомпилятору .NET кода DotPeek

Скачать dotPeek
Возможности dotPeek


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