Adplus from the Debugging Tools can be used to get Hang Dumps. Normally, you want to take at least 2 dumps to so the person debugging can get an idea of where the hang is.
Installing Adplus and the Debugging SDK:
1) Go to http://www.microsoft.com/whdc/devtools/debugging/default.mspx and download the debugging tools to match the version of Windows of the machine where the program is running and the processor type (32bit or 64bit) of the application for which the dump is going to be taken.
2) Install the tools on the machine where you are running the application that is hanging.
Steps for getting Hang Dumps:
1) In the directory where you installed the debugging tools, there should be a script name "adplus.vbs". Open a command prompt and navigate to the directory where this file is installed.
2) Run the script using one of the following methods:
a) By process name.
cscript adplus.vbs -hang -pn <process name> -quiet
Note: So for instance if you had notepad.exe running and you wanted to dump it, the syntax would be: cscript adplus.vbs -hang -pn notepad.exe –quiet
b) By Process ID:
cscript adplus.vbs -hang -p <process id> -quiet
Note: You can get the process ID from Windows Task Manager or tList (in the debuggers directory).
c) By launching the application:
cscript adplus.vbs -hang -sc <executable file> -quiet
Note: <executable file> is the file path and name of the executable.
3) A directory will be created in the same directory as the script file. You'll know it when you see it. It will be a very long folder name.
4) Wait about 2-5 minutes and generate another dump of the same process.
After everything is completed you should have 2 different dumps. The dump files, even zipped, will most likely still be too big to send via email. It’s best to setup an FTP or upload site in order to provide such dumps to another person.
Note: You may need to restart the process if it is hung, however it normally will continue running after the debugger used by ADPlus detaches.