Why I’m Not Writing a Native C++ Debugging Book

In the introduction of my book Debugging Microsoft .NET 2.0 Applications, I said I was going to write a second book focused on native C++ debugging. I’ve got a great outline prepared that has all sorts of interesting ideas. Some of the highlights are a complete focus on very advanced native usage of WinDBG. Things…

Updated Debugging Microsoft .NET 2.0 Applications Source Code (3.2.10905.1)

There’s been two bug reported in the code so I fixed them. Here’s the updates from the Change Log: Fixed a bug in Wintellect.DiagnosticsConfigTraceSwitchWatcher.cs reported by Burke Attilla where I was not properly handling internationalized paths when looking for the .VSHOST. string. For Vista installations, properly set the InstallPrivileges property in Debugging.wxs and WintellectToolsInstall.wxs. Fixed…

XslCompiledTransform Performance

I’ve been meaning to write some benchmark code to compare the performance of .NET 2.0’s new XslCompiledTransform class and 1.1’s deprecated XslTransform. I finally got around to it this morning, and the results were a little disappointing. In my tests, which used a fairly simple style sheet, XslCompiledTransform ran about 3 times faster than XslTransform.…

Field access versus local variable access performance

Recently, I was at a customer site and they were comparing the performance of a function that was written in unmanaged C with its C# equivalent. As they expected, the C code was performing much faster than the C# code. However, I didn’t expect this. Once managed code is JIT compiled, the code is very…