.NET decompiler для Mac или Linux

Мне нужно декомпилировать небольшое приложение, написанное на .NET, и преобразовать его в C++. У меня не установлена Windows, и я знаю, что есть несколько декомпиляторов .NET для Windows. Поскольку у меня есть только Mac и Linux, и я не хочу устанавливать Windows только для того, чтобы иметь возможность запускать декомпилятор, мне интересно, есть ли простой способ декомпилировать приложение .NET в Mac или Linux? Я искал это и ничего не нашел.

Ответ 1

Поскольку большая часть .NET с открытым исходным кодом, ILSpy также работает с Linux и Mac.

Со страницы проекта gitbub:

Декомпилятор Фронтендс

Помимо пользовательского интерфейса WPF ILSpy (загружаемого через релизы, см. Также плагины), доступны следующие другие интерфейсы:

  • Visual Studio 2017 расширение рынка
  • Хранилище расширений кода Visual Studio | рыночная площадь
  • ICSharpCode.Decompiler NuGet для ваших собственных проектов
  • Интерфейс ILSpy для Linux/Mac/Windows на основе Avalonia - посмотрите https://github.com/icsharpcode/AvaloniaILSpy
  • Клиент командной строки для Linux/Mac/Windows - посмотрите ICSharpCode.Decompiler.Console в этом репозитории
  • Командлеты Linux/Mac/Windows PowerShell в этом хранилище

Поскольку VS Code работает с Linux и Mac, этот интерфейс должен работать и в этих операционных системах. Клиент командной строки тоже должен работать.

Кроме того, у Jetbrains есть новая IDE для .NET, Rider. Работает в Linux и Mac. Райдер имеет встроенный декомпилятор. К сожалению, этот встроенный компилятор dotpeek доступен только для Windows.

Другой выбор - использовать моно декомпилятор - инструмент из монопроекта. Попробуйте использовать это. Обратите внимание, что это надстройка в monodevelop.