在Visual Studio中,哪个免费的C#反编译器最好?

18

在我的Java开发中,Jad/JadClipse反编译器给我带来了很大的好处。它使得我能够知道为什么第三方库会失败,而不是像以前一样靠猜。

我正在寻找一个类似的C#和Visual Studio设置。也就是说,在我的代码中,我可以指向任何类或变量,并获得该特定类的代码视图。

什么是最好的设置?我想要能够使用平常用来浏览自己代码的“跳转到声明/实现”的功能。它不一定需要免费,但如果是那就更好了。

它应该支持Visual Studio 2008或Visual Studio 2005和.NET 2和3(.5)。

8个回答

13

这是一篇关于反编译工具Reflector以及如何将其集成到Visual Studio中的好文章

Of particular interest is the Reflector.VisualStudio Add-In. This add-in, created by Jaime Cansdale, allows for Reflector to be hosted within Visual Studio. With this add-in, you can have Reflector integrated within the Visual Studio environment.

To get started, you will need to have the latest version of Reflector on your machine. Once you have downloaded Reflector, download the latest version of the Reflector.VisualStudio Add-In from http://www.testdriven.NET/reflector. The download contains a number of files that need to be placed in the same directory as Reflector.exe. To install the add-in, drop to the command line and run:

Reflector.VisualStudio.exe /install

After the add-in has been installed, you can start using Reflector from Visual Studio. You’ll notice a new menu item, Addins, which has a menu option titled Reflector. This option, when selected, displays the Reflector window, which can be docked in the IDE. Additionally, the add-in provides context menu support.

When you right-click in an open code file in Visual Studio, you’ll see a Reflector menu item that expands into a submenu with options to disassemble the code into C# or Visual Basic, display the call graph or callee graph, and other related choices. The context menu also includes a Synchronize with Reflector menu item that, when clicked, syncs the object browser tree in the Reflector window with the current code file.


14
自2011年3月10日起,此项服务不再免费。 - KevinH

10

4

如果你使用ReSharper工具,Scout插件可以将Reflector与其集成。


3

ReSharper 6(目前提供早期访问)支持在Visual Studio中反编译,整个 ReSharper 的导航功能包适用于反编译代码。我们之前博客推文了这一点。


2

我认为dotPeek是最好的免费工具,用于反编译C#代码和.Net程序集。


1

我不认为它可以与Visual Studio集成,但Reflector可以将.NET程序集反编译成多种.NET语言,或显示IL代码。


1

Remotesoft的Salamander .NET反编译器不会集成在Visual Studio中,但它可以生成Visual Studio .NET项目文件以便于重新编译。它是收费的。


1
您可以通过在bin文件夹中使用“打开方式”并选择Reflector(并设置为默认)来将.NET Reflector附加到Visual Studio。此外,许多工具(例如TestDriven.NET,如果我没记错的话,可能还包括ReSharper)提供了一定程度的.NET Reflector集成。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接