.NET Reflector VSPro v10.1.1419 (Portable+Add-ins)File Size : 12.85
.NET Reflector is an assembly browser for the Microsoft .NET platform that can be used to explore, analyse, decompile, and debug the contents of any .NET assembly - even if you don't have the source. .NET Reflector combines class browsing, static analysis and high-level decompilation to help .NET developers understand how a library works or how it interacts with other parts of a .NET application. .NET Reflector will decompile to high level C#, VB, IL and some F# features.Standalone Windows application
Browse, analyse and decompile any .NET code
Decompile any .NET assembly to C#, VB.net or IL
Tabbed decompilation, search and analyse panesVisual Studio Integration
Open any assembly in Reflector straight from Visual Studio
Decompile assemblies without source seamlessly from inside Visual Studio
Browse objects using the Reflector Object Browser inside Visual StudioDebug assemblies without source code
Step-through debugging of any decompiled assembly in Visual Studio
Set breakpoints anywhere in the decompiled code
Watch variables, set next statements, modify variable values, and dynamic expression evaluation.Add-ins :xmi4dotnet :
Convert your .NET assemblies into XMI for easy import into UML tools like Poseidon for UML. This code has been designed to work with Reflector for .NET 5, and .NET 2.0 assemblies.Reflexil.Reflector.AIO
Reflexil is an assembly editor and runs as a plug-in for Red Gate's Reflector, ILSpy and Telerik's JustDecompile. Reflexil is using Mono.Cecil, written by Jb Evain and is able to manipulate IL code and save the modified assemblies to disk. Reflexil also supports C#/VB.NET code injection.Power Commands :Collapse All Assemblies
There is now a command to Collapse All Assemblies in the File menu. Since we don't have a root node in the assembly browser (like a solution in Visual Studio has) this doesn't make sense in a context menu, so it's in the File menu for now. As Jason Haley put it when he originally wrote the Power Commands add-in: "This exposes the underlying tree view's CollapseAll method functionality – which means it will collapse all expanded nodes that are currently open." It's great for when you have a ton of assemblies and you need to go back to the default state before you expanded them all.Copy As
When viewing code for a class, type, property or field, you can now use the right-click context menu in the code window to copy all the code to the clipboard in a format of your choice. Note that for a class this will expand all the methods automatically, so in the picture above selecting "Text" will copy the entire ConcurrentBag <T> class to the clipboard.
Hopefully this will fix some of the issues where you need to quickly reproduce the code generated by Reflector, but were having problems with those pesky code hyperlinks. The original copy function is still there if you still want to copy a selection as well, and becomes available when you highlight a section of code.Import/Export Assembly List
We're still looking at ways to improve our assembly list management functionality, but for now there's a way to save your assembly list setup by using the Export Assembly List command, and then load it back using Import. Perhaps you might want to do this as part of backing up your Reflector configuration, or to move between different computers with the same setup. Exporting opens another dialog where you can choose which assemblies from the lists to export, and save this as an XML file for later importing.
It's not immediately clear that importing won't make changes to the assemblies which are currently loaded into Reflector, only the assembly lists. So once you've imported your assembly lists you will still need to Open Assembly List and select the list you want to load into Reflector.Open File Location
This opens an explorer window at the location on disk where the assembly can be found. Useful for when you quickly need to get to the DLL or EXE so you can manipulate the file outside of Reflector.Open With
At several levels in the assembly browser there's an option to open the selected item with an application of your choice. Separate commands for common applications formed a large proportion of the original Power Commands add-in, so we've distilled these into default applications for one larger Open With command.
This means slightly different functionality for different levels in the tree. Notably, code snippets are written to a temporary file (using the Copy As function described earlier, but writing to a file instead of the clipboard) so they can be opened, and resources are extracted before they open normally. Resource tables are opened in Visual Studio as .RESX files so they can be viewed more easily. And assemblies open as expected.
Selecting Choose Application will bring up a dialog where you can add your own applications. Adding an application to the list will save it so that next time you select Choose Application you will be able to select the desired application faster.Open Zip
Did you know you can drag a .ZIP archive into Reflector and it will decompile the compressed assemblies without you having to extract them yourself? This was originally a Power Command, but while looking for ways to merge the code I discovered native functionality in Reflector for opening Silverlight applications (XAP files) which could be easily extended to handle .ZIP archives as well. You can also select .ZIP archives now from the drop down menu in the Open Assembly dialog, and open them through the menu.Referenced By
The analyzer now contains the functionality to show which of the assemblies loaded into Reflector depend on the selected assembly or module. This means you can now check dependencies both ways: from the assembly browser for references of the current assembly, and from the analyzer for assemblies referencing the current assembly.
At the moment the analyzer will only show the list of assemblies. But if it's useful, it might be an exciting possible improvement for the future to attempt to show the code which calls into the current assembly by making the analyzer tree expandable to show the classes and methods which do this! That way you will be able to see not only where your assembly is being used, but also how it is being used by other assemblies.Download :