How to get line numbers in your code for specific events, viz., exception?

One of my clients came up with a requirement to track down the line of the code immediately when the exception is thrown, note that this is ‘without the use of the debuggers’. My research led me to lot of questions online about this and hence I am trying to write a succinct blog about what…

Swallowing SEH Exceptions is EVIL!

This case was a good case-in-point of why crashing can sometimes be a good thing – at least it helps you find and fix your bugs! This issue was reported as ‘my application just randomly disappears’.  We had the developer run this app under procdump with unhandled exceptions being caught – ‘procdump -ma -e Test.exe’….


Visual Studio 2012 IDE freezes while editing a UML model object

Recently I got an opportunity to work with a customer who was observing some performance issue with their VS2012 IDE intermittently while editing some UML diagrams. More information about the problem assessment is as below: Symptom While trying to edit any UML model in Model Explorer, e.g. editing a sequence diagram/activity diagram/component diagram etc., the…


JIT Debugging using Visual Studio may fail when trying to debug a Session 0 Process on Windows 8

When you try to JIT debug a Session 0 process (like a windows service) on Windows 8 using Visual Studio Debugger, you may find it fails to launch the debugger and see below error in the Application Event Log "Just-In-Time debugging this exception failed with the following error: The operation attempted is not supported". The…


Windows RT Store app Debugging

Windows RT devices are now available so I thought I’d do a few posts on debugging tools for Windows Store apps on Windows RT and the ARM assembly generated with Visual Studio 2012 native (C++) tools. Understanding ARM assembly is a useful skill for debugging and troubleshooting, particularly if you ever work with process dump…


Making sense out of a nonsensical call stack

Recently a colleague wrote an application which on purpose caused an access violation. He took a memory dump of the process when it access violated and checked the call stack. To his surprise he didn’t see a direct call stack which would point him to the exact location in his source file but the call…