views:

7813

answers:

5

In my java development I have had great benifit from the jad/jadclipse decompiler. It made it possible to know why a third party library failed rather than the usual guesswork.

I am looking for a similar setup for C# and Visual Studio. I.e. a setup where I can point to any class or variable in my code and get a code view for that particular class.

What is the best setup for this? I want to be able to use the usual "jump to declaration/implementation" that I use to navigate my own code. It doesn't have to be free, but it would be a bonus if it was.

It should support VS2008 or VS2005 and dotnet 2 and 3(.5)

+1  A: 

I don't think it can integrate with Visual Studio, but Reflector can disassemble .NET assemblies into a number of .NET languages, or show the IL.

Khoth
+1  A: 

Remotesoft's Salamander .NET decompiler doesn't integrate in Visual Studio, but it can generate Visual Studio .NET project files for easy recompilation. It's not free.

splattne
A: 

You can attach Reflector to VS by simply using "Open with" on the dll/exe in the bin folder, and choosing reflector (and set as default). Also, many tools (such as TestDriven.NET if I recall, and possibly resharper) provide a level of reflector integration.

Marc Gravell
+13  A: 

Here is a good article about Reflector and how to integrate Reflector into 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."

splattne
+4  A: 

The Scout plugin integrates Reflector with ReSharper, if you happen to use that tool.

Joel Mueller