Category Archives: Uncategorized

Heading in the right direction – new analysis features

A long while ago in developer years – sometime last year in real time – the Reflector team decided to do a spike to see if we could spice up the Reflector code pane.


The Reflector code pane

At the time we were focussed on making it easier for someone to take decompiled code and understand it, in order to get to the root cause of their debugging problem. When you edit code in Visual Studio there are many tools for helping you understand the flow of data of data through the methods. Since we generate the decompiled code, we know lots of information about the code and its relationship to other decompiled methods, and so we should be able to make this information available to users of Reflector in the form of some kind of head up display.

(If you want to try it out, you can download it here)

Continue reading

Reflector 8.0 is now available

Reflector V8 has just shipped, so here’s a quick overview. In this update we’ve added better search and filtering (in Reflector Desktop, and the Visual Studio extension), improved navigation to decompiled code from the call stack, fixed plenty of bugs, improved performance a little, and added decompilation in Visual Studio when you hit an exception. The big idea was to make it easier and faster to get to the relevant lines of code when you’re debugging.

Search and filtering

This is the most visible change in version 8. The object browser in Reflector Desktop, and in the Visual Studio extension now has a search box at the top. This lets you filter the tree view so you can just look at the things you might be interested in.

The search includes some scoping, so you can search for, say, all instances of a search string within a particular namespace. This should make it a bit quicker to find what you’re looking for, and navigate through unfamiliar code.

Debugging in Visual Studio

If you’re debugging an executable or library without source code, and that’s where the error is, the call stack can be a bit unhelpful. It’ll either be empty or greyed-out, depending on your settings. What we’ve done in V8, is add the ability to navigate to decompiled source from grey frames. So when you break in a debugging session, you should now always be able to get direct to source.

It works under IIS, too, so debugging should get a little nicer for the web and SharePoint folks.

Try it out

Version 8 is available now, and you can download it and try it out.

This release wraps up what’s been a fairly sizeable version 7. It’s nothing like an exhaustive list, but we’ve seen: a new installer, plenty of engine work (C#5, VB improvements, XAML, etc) various batches of work on the power commands, PDB generation and debugging in Visual Studio, VS2012 support, this new search and debugging functionality, and a substantial set of bug fixes. You can check out a full list of what’s new since version 7 on the changelog.

If you’ve already bought version 7, we’ll be making version 8 available as a free upgrade, so your existing license should just work. If you haven’t tried v7 yet, it’s well worth taking a look at version 8, because quite a lot has changed in the last couple of years.

We hope you’ll like it, and as always, drop us a line if you have any feedback

Obfuscation and build checking – building a tool to help

It’s Down Tools Week here at Red Gate, which sounds a bit like a bout of messy industrial action, but is actually a kind of week-long hack day. Most of the Reflector team (and some of our DevOps guys) are working on something we’ve had on a back burner for a while: the .NET Obfuscation Checker.

It does exactly what it sounds like it does. The checker uses Reflector to examine the assemblies and .exe files in a directory, and see what’s obfuscated. It’s based on the tool David built and that we use internally to check that our builds are ready to ship.

Continue reading

Lighting up the call stack

We got really interested in debugging workflows during our last batch of user research. One of the things we noticed was that even with Reflector installed in Visual Studio, the debugging trail can easily go cold when you hit third party code.

If you’re attached to a process in a debugging session and you break or hit an exception, the typical experience is either a rather useless greyed-out call stack, and the disassembly metadata view, or worse, if you’ve got “Enable just my code” switched on, an empty call stack and the faintly sad message “No disassembly available”. Neither is particularly helpful.

Progress so far: enabling call stack frames

Continue reading

Quick new EAP build 9 release

So I’ve just made the installers “per user” again. This means update from EAP 7 will be smoother (but if you’d installed EAP 8 in the last 2 days you’ll probably need to uninstall that one manually now). The installers still elevate, but they only install for the user running it now.

The main reason is this means the visual studio extension can be controlled using the extension manager again – VS seems to be more setup for per user extensions.

EAP 7.6 Build 4

The team is finally back under the same roof (back from assorted conferences and holidays), and we’ve been forging ahead with our Dev11 theming and C#5 async support. We also took the time to do a little house-keeping, which I’ll get out of the way first. So here’s what we’ve been working on for .NET Reflector v7.6.0.356EAP4…

Continue reading

EAP 7.6 Build 2, Take 2

We released a patch for EAP build 2 this afternoon, and we recommend you grab it.

Due to an entertaining quirk, the async functionality Clive was working on didn’t actually play nicely on our users machines. Luckily, Clive very quickly figured out why, and today’s build fixes the issue. So, with the latest release, you’ll be able to see the very early async support we’ve been working on (please bear in mind that we’re only talking about a small subset of async functionality at this stage).

As an added bonus, Nigel has also been busy, so you’ll see some small enhancements to the Dev11 theming as well.

Take the new build for a spin, please let us know what you think, and have a great weekend



EAP 7.6 Build 2

Visual Studio Dev 11 looks…. different.  If you’ve not seen it, then you’re in for a surprise (you can download the latest VS11 Beta from a link at the bottom of this post). It’s gone monochrome, with no colour in most of the icons, and colour is only used when you really need to look at something (apparently). The other new addition to the look is the idea of Themes. Dev 11 ships with a light theme and a dark theme (Must. Resist. Force. Comparisons.), which basically amount to light grey or dark grey.

The current theming of the .NET Reflector Object Browser in Dev11

Continue reading