SharpDevelop Community

Get your problems solved!
Welcome to SharpDevelop Community Sign in | Join | Help
in Search

Daniel Grunwald

ILSpy - a new .NET assembly inspector

First, I'll let the screenshot speak for itself:

Now that RedGate has announced that Reflector will no longer available be for free; the SharpDevelop team has started to create an open-source replacement: ILSpy

Just as any of the assembly browsers inspired by ILDasm, the UI is simple: a tree view on the left allows you to view the contents of the assembly; the text view on the right shows the contents of the selected method.

As for the decompiler engine itself, we still haven't decided - the screenshot above was created with Cecil.Decompiler, and you can clearly see that there are quite a few issues even in such a trivial method. We do have an alternative solution - David Srbecky (who wrote SharpDevelop's debugger) has written his own decompiler in early 2008 as part of his dissertation. However, tests show that whichever library we pick up, it will take a lot of work until the results come anywhere close to what people are used to.

The new GUI is written in WPF and reuses a few SharpDevelop components - the tree view is SharpTreeView, written by Ivan Shumilin for the SharpDevelop WPF Designer outline view. This tree view is not used in any other place so far, but that will likely change in the future, as it has additional features over the normal treeview: multiselection, support for columns (GridView mode), and a built-in framework for copy/paste and drag'n'drop. The drag'n'drop support is already used in ILSpy to allow the user to reorder the assembly list.

The text view on the right is, of course, using AvalonEdit, SharpDevelop's text editor (new as of version 4.0).

If you are interested in contributing, write me a mail; or just join us in #sharpdevelop (on freenode).

Published Feb 04 2011, 07:48 PM by DanielGrunwald
Filed under:

Comments

 

guyfomi said:

thank you for releasing this reflector alternative

February 6, 2011 12:16 PM
 

Merinela said:

Thanks for your sharing

February 23, 2011 10:14 AM
 

chirurgia orale said:

ILSpy seems to work correctly, thanks.

June 25, 2011 1:25 AM
Powered by Community Server (Commercial Edition), by Telligent Systems
Don't contact us via this (fleischfalle@alphasierrapapa.com) email address.