Что-то лучше, чем .NET Reflector?

Раньше я любил .NET Reflector, но с тех пор, как Red Gate Software занял его место, он резко упал. Теперь это заставляет меня обновляться (что совершенно нелепо), половину времени обновление не проходит гладко, и с каждым обновлением все больше снижается моя производительность. Мне это надоело, и я готова к чему-то лучшему. Есть ли лучший дизассемблер?


Обновление:

Список различных альтернатив, упомянутых в ответах -

Ответ 1

Также посмотрите ILSpy от SharpDevelop. Это на ранних стадиях развития, и они только что выпустили 24 февраля. Это само по себе работает очень хорошо для меня. На своем веб-сайте:

ILSpy - это сборка .NET с открытым исходным кодом браузера и декомпилятора.

Разработка началась после Red Gate объявила, что бесплатная версия .NET Reflector перестанет существовать конец февраля 2011 года.

Обновление: JetBrains выпустила dotPeek, бесплатный декомпилятор .NET.

Обновление 2: у Telerik также есть бесплатный декомпилятор: JustDecompile.

Ответ 2

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

Хорошая новость заключается в том, что мы готовили отдельное двоичное приложение как исходный код, то есть браузер с декомпилятором + сборка, чтобы исследовать любой скомпилированный код .NET, допустимый для изучения. У нас нет конкретной даты релиза, но она выйдет в этом году и будет бесплатной. И говоря "бесплатно", мы на самом деле имеем в виду "бесплатно".

Здесь больше информации.

ОБНОВЛЕНИЕ: JetBrains выпустила продукт под названием dotPeek, и его можно найти здесь.

Ответ 3

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

  • ILSpy: Это из тех же людей, которые создают (также бесплатную) среду разработки SharpDevelop. Помимо бесплатности, он также является открытым исходным кодом. Дополнительным расширением, над которым они работают, является возможность отлаживать декомпилированный код (что может сделать pro-версия Reflector), что работает на удивление хорошо.
  • JustDecompile: автономный декомпилятор от Telerik (объявлен сегодня, в настоящее время в бета-версии).
  • dotPeek: автономный декомпилятор из JetBrains (доступный автономно как часть EAP на данный момент).

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

Ответ 4

Некоторые другие, не упомянутые здесь -

  • Mono Cecil: С Cecil вы можете загружать существующие управляемые сборки, просматривать все содержащиеся в нем типы, изменять их на лету и сохранять обратно на диск измененная сборка.

  • Kaliro: это инструмент для изучения содержимого приложений, созданных с использованием инфраструктуры Microsoft.Net.

  • Dotnet IL Editor (DILE): Dotnet IL Editor (DILE) позволяет дизассемблировать и отлаживать приложения .NET 1.0/1.1/2.0/3.0/3.5 без исходный код или файлы .pdb. Он может отлаживать даже сам или сборки .NET Framework на уровне IL.

  • Общая инфраструктура компилятора: Microsoft Research Common Compiler Infrastructure (CCI) представляет собой набор библиотек и интерфейс прикладного программирования (API), который поддерживает некоторые из функциональность, которая является общей для компиляторов и связанных с ними инструментов программирования. CCI используется в основном приложениями, которые создают, изменяют или анализируют файлы .NET Portable исполняемого файла (PE) и debug (PDB).

Ответ 5

Исходный код .NET теперь доступен.

Смотрите эту ссылку или это

Или, если вы ищете декомпилятор, я использовал DisSharper. Это было достаточно хорошо для меня.

Ответ 6

Последняя версия Red Gate - 6.1. Однако версия 5.1 не может автоматически обновляться до версии 6, поскольку в Условиях использования были внесены изменения, поэтому вместо этого вы перенаправляетесь на сайт для загрузки версии 6.1. Это в основном из-за юридических причин, так как вы можете проверить следующее сообщение:

Oi! Что происходит с механизмом обновления .NET Reflector?

После обновления вручную до версии 6.1 вы больше не будете испытывать никаких проблем.

Ответ 7

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

Ответ 8

Я не уверен, что вы действительно хотите здесь. Если вы хотите увидеть исходный код .NET Framework, попробуйте Netmassdownloader. Это бесплатно.

Если вы хотите увидеть любой ассемблерный код (не только .NET), вы можете использовать ReSharper. Хотя это не бесплатно.

Ответ 9

У 9Rays был декомпилятор, но я давно не проверял. Это было не бесплатно, я помню...

Существует также новый (по крайней мере для меня) с именем Dis #.