Difference between revisions of "Dr Watson"
(typo) |
|||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:Windows]] | [[Category:Windows]] | ||
+ | Quite useful when running eweasel is the ability to disable those intempestive dialogs that shows up when your application crashes asking if you want to debug it. It is done differently depending on your version of Windows. | ||
− | + | == Windows 7 == | |
− | == Unmanaged application == | + | Edit the following registry key and set the value to 1. |
+ | |||
+ | HKEY_CURRENT_USER\Software\Microsoft\Windows\Windows Error Reporting\DontShowUI | ||
+ | |||
+ | After that no dialogs will ever show. | ||
+ | |||
+ | == Windows XP == | ||
+ | |||
+ | This can be disabled by doing two things, one for managed application, one for unmanaged application. Not that if you are running the 64-bit version you also need to edit the Wow6432Node part of the Software key under HKEY_LOCAL_MACHINE. | ||
+ | |||
+ | === Unmanaged application === | ||
In theory, editing the key: | In theory, editing the key: | ||
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AeDebug\Auto | HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AeDebug\Auto | ||
Line 10: | Line 21: | ||
However we noticed that it does not always work. If this is your case, then reset `Auto' to 1 and then rename `Debugger' into `Debugger-old' and create a new `Debugger' empty key. Then it should not prompt you at all. | However we noticed that it does not always work. If this is your case, then reset `Auto' to 1 and then rename `Debugger' into `Debugger-old' and create a new `Debugger' empty key. Then it should not prompt you at all. | ||
− | == Managed application == | + | If it still does, it should be possible to disable a dialog from Dr.Watson utility (to be run as an administrator): |
+ | # Install Dr.Watson as your default debugger: | ||
+ | #: <code>drwtsn32 -i</code> | ||
+ | #: Usually it writes the following value to the '''Debugger''' registry key: <code>drwtsn32 -p %ld -e %ld -g</code> | ||
+ | # Run <code>drwtsn32</code>, clear '''Visual Notification''' check box and press ''OK''. | ||
+ | |||
+ | === Managed application === | ||
Edit the key: | Edit the key: | ||
HKEY_LOCAL_MACHINE\Software\Microsoft\.NetFramework\DbgJITDebugLaunchSetting | HKEY_LOCAL_MACHINE\Software\Microsoft\.NetFramework\DbgJITDebugLaunchSetting |
Latest revision as of 08:22, 25 May 2011
Quite useful when running eweasel is the ability to disable those intempestive dialogs that shows up when your application crashes asking if you want to debug it. It is done differently depending on your version of Windows.
Windows 7
Edit the following registry key and set the value to 1.
HKEY_CURRENT_USER\Software\Microsoft\Windows\Windows Error Reporting\DontShowUI
After that no dialogs will ever show.
Windows XP
This can be disabled by doing two things, one for managed application, one for unmanaged application. Not that if you are running the 64-bit version you also need to edit the Wow6432Node part of the Software key under HKEY_LOCAL_MACHINE.
Unmanaged application
In theory, editing the key:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AeDebug\Auto
so that it reads 0 instead of 1 should do the trick (0 means disabling it, 1 activating it).
However we noticed that it does not always work. If this is your case, then reset `Auto' to 1 and then rename `Debugger' into `Debugger-old' and create a new `Debugger' empty key. Then it should not prompt you at all.
If it still does, it should be possible to disable a dialog from Dr.Watson utility (to be run as an administrator):
- Install Dr.Watson as your default debugger:
-
drwtsn32 -i
- Usually it writes the following value to the Debugger registry key:
drwtsn32 -p %ld -e %ld -g
-
- Run
drwtsn32
, clear Visual Notification check box and press OK.
Managed application
Edit the key:
HKEY_LOCAL_MACHINE\Software\Microsoft\.NetFramework\DbgJITDebugLaunchSetting
so that it reads 0x1. The meaning of the value is described below:
- 0x0 = Bring up the unhandled exception dialog box. (Click OK to terminate ...)
- 0x1 = Print out the stack trace of the exception and terminate the application
- 0x2 = Invoke the default managed debugger
- 0x10 = only for the .NET Framework version 2.0, the runtime presents the message box described above for processes that are interactive with the desktop. For processes that are not interactive, the runtime spawns the debugger listed in the DbgManagedDebugger registry key.
You can get a more detailed explanation from MSDN.