Snoop 2.9.0 Release

After a long, long, long, long, long, long, long (ok you get the point) time … Snoop has a release! This release bundles everything in master up … and most notably has a new Triggers tab which you might recognize from Christian Moser’s WPF Inspector utility.


Due to this release … and because GitHub actually does allow you to attach binaries to a release, I will no longer be hosting the binaries here.

Snoop 2.8.0 Download

Unless you are dead or living under a rock, you’ve heard that CodePlex is basically giving up the ghost. I am not sure, but it may be the case that the Snoop 2.8.0 download may not be easily accessible anymore. Given that I’m going to host the Snoop binaries here instead (since GitHub doesn’t allow you to do that) and link from GitHub to here.

Download Snoop here. (The binaries have been removed from this web site, they are now available at GitHub).

PDC 2009

PDC09Bling_Workshops_HandsDirty_240 PDC09Bling_General_WhatsNext_240


My employer has graciously sent me to PDC this year and I’m stoked!

In fact, I’m here right now … about to walk down to the convention center, get registered, and attend one of the pre-cons (I’m going to the Silverlight one with the two Griffs (Ian Griffiths and Richard Griffin)).

If you see me there … don’t hesitate to say hello.

Disabling Optimizations when Debugging .NET Framework Source Code

Ok, you think you’re cool when you get the capability to debug the .NET Framework source code all set up. You’re like, “I am all powerful!” Then you start noticing the oddities ….

“Wait, why I can’t get the value of that variable?!”

“Why did it step there? It should have stepped here?!”


The problem is that ‘you’re debugging against retail-optimized code’. Fortunately, someone at Microsoft handed out the trick to disable these optimizations. Check out this link for more info, but basically there are only a few steps:

  • Create a .cmd file that sets an environment variable and then launches Visual Studio. Name it whatever you want (e.g. DisableOptimizationsInVisualStudio.cmd). It’s contents should be:
set COMPLUS_ZapDisable=1
cd /d "%ProgramFiles%\Microsoft Visual Studio 9.0\Common7\ide\"
start devenv.exe
  • Launch Visual Studio with this .cmd file.
  • Once in Visual Studio, disable the Visual Studio hosting process:

Right click on your project and choose “Properties”.
Choose the “Debug” tab and uncheck “Enable the Visual Studio Hosting Process”.

  • Launch your application in the debugger.


Once again, you are all-powerful.


For more information (in reverse chronological order):

  • Apparently, you can now get all the source code, at once, from Microsoft and without having to resort to the .NET Mass Downloader. I have not tried this yet, but check out this link for more info.
  • The CodePlex site for the .NET Mass Downloader
  • John Robbins’ blog post about the 1.5 version of the .NET Mass Downloader
  • John Robbins’ blog post about the 1.2 version of the .NET Mass Downloader
  • John Robbins’ blog post about the 1.1 version of the .NET Mass Downloader
  • The initial release of the .NET Mass Downloader by John Robbins and Kerem Kusmezer
  • Shawn Burke’s original post on how to configure Visual Studio to debug .NET Framework source code

I should also mention that I used the .NET Mass Downloader on the following directories in order to pull down .NET 2.0, .NET 3.0, and .NET 3.5. I was not aware (prior) that most of the assemblies for .NET 3.0 and .NET 3.5 were at “C:\Program Files\Reference Assemblies\Microsoft\Framework”. That represents a departure from the original location at “C:\Windows\Microsoft.NET\Framework”.

  • C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
  • C:\WINDOWS\Microsoft.NET\Framework\v3.0
  • C:\WINDOWS\Microsoft.NET\Framework\v3.5
  • C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0
  • C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5

Ctrl-K, Ctrl-D: Reformatting XAML in VS 2008

StackOverflow is continuing to prove its usefulness. Today, I ran across a post about reformatting xaml. Being very meticulous (ok, obsessive/compulsive <grin>) about this sort of thing, it caught my eye.

One of things, I have loved Kaxaml for is its xaml scrubber (formatter).

However, I have always wanted to have this ability in Visual Studio. Well, you do (at least in VS 2008, I haven’t checked VS 2005). Check out Laurent’s blog post on it.