JetBrains are also about to include decompiling functionality into their forthcoming release of ReSharper 6. In fact, decompiling has been announced as part of ReSharper 6 back in February 2011, and available in ReSharper 6 pre-release nightly builds since then.
What can be opened?
dotPeek decompiles any .NET assemblies and presents them as C# code. Both libraries (.dll) and applications (.exe) can be opened with File > Open assembly.
In addition, assemblies from GlobaL Assembly Cache can be opened via File > Open from GAC. One thing to note about the Open from GAC dialog is that you can batch-select assembly items there, and you can also filter out assemblies by entering their CamelHumps - the capitals that different parts of assembly names start with. for example,
How is decompiled code presented?
As C# code.
dotPeek provides an assembly explorer to traverse the list of opened assemblies
Look-and-feel of Visual Studio:
- Line numbers
- Word wrap
- Code Highlighting. Syntax highlighting allowing for easy viewing.
- Highlighting matching delimiters
- Familiar icons for Member information. Using the same icons that we are used to in Visual Studio for member identification.
- Same tabbed tool windows as those in ReSharper (different to the actual Tool Windows that exist). Same feel. All tool windows have collapse, expand, filtering and other features available in ReSharper, as well as possibility of tabs.
- Ability to open from GAC easily
- Visual Studio look-and-feel tabbed browsing
- Extend/shrink selection