Parallel Computing Initiative..

As a part of Parallel computing initiative at Microsoft, we just released Parallel Extensions to .NET Framework 3.5 Community Technology Preview (CTP) which can be downloaded from here. Also, at MSDN, there is new section dedicated to ideas, technology, samples and information for developers who are interested in leveraging parallel computing, which can be accessed…


Visual Studio 2005 debugging trick..

Just now, I found a trick in Visual Studio 2005 to debug pointers in better way. You can ‘,n’ in watch window where ‘n’ is number of elements to display. I think following snapshot is self explanatory.. Stay tuned..


My component is not listed in DCOMCNFG..

I hear this problem occasionally. Customers have COM/DCOM component on the system registered properly, they want to enable DCOM on their component (to access the component over the network!). They need to modify the permissions for their component, for which they open DCOMCNFG.exe, but they can not find their component in the list of DCOM…


Interesting windbg command-line parameters..

Here is a list of few interesting command-line parameters and their mapping to interactive commands in windbg.. PS: Taken from “Advanced Windows Debugging” (the best debugging book, I have ever come across!!).. Go grab your copy! Stay tuned..


How to install windbg for post-mortem debugging..

I was looking for a way to install windbg as postmortem debugger so that everytime any process crashes or exits unexpectedly, windbg is launched automatically and I can take a look at whats happening there!   Windbg has special command line option for installing it as postmortem debugger. Use following command, C:\Program files\Debugging Tools for…


Extracting modules (EXE, DLL, and other binaries) from memory dump..

Yet another debugging challenge.   Imagine a situation where you get a memory dump from customer and need modules (DLL, EXE, OCX etc.) to further debug.. (.NET modules can be used to look at source code by reverse engineering..)   SOS.dll is at the rescue. We can use clr10\sos.dll inside windbg directory to save all…


How to debug startup code for a process which is started by some other executable!

Yet another debugging challenge.. The problem is, we want to debug the startup code for an application which is run by some other application! e.g. I will open a console (cmd.exe) which in turn opens calc.exe and I want to debug the initial calc.exe code.. Windbg has solution to this problem! When you select “open…


Why 32 bit registers are called EAX, EBX, ECX, EDX etc.

This is actually an interesting story, Back in the days when we had 8 bit processors (8 bit processors means registers in processors will be able to hold 8 bit data), registers were called like,AL, BL So, when we moved to 16 bit processors, we named them as,AX, BX.. (AX can be broken into AH…


How to look at value of structure object who is member of Class object while debugging in WinDbg??

Sometimes when you debug applications, it happens that you have got the pointer to class which has few member variables including structures and another class objects! How to look at values of those inner class/structure variable’s members?? So, here is the tip. Following is the code being used for demonstrating commands. 1: struct testStruct 2:…


How to break in WinDbg when particular function returns specific value??

If you are debugging a lot, you might come across a need where you need to put a breakpoint on a function and special requirement is you need to break only when that function returns a specific value!! e.g. I am checking for CoCreateInstance method from COM library and want to break only when it…