Debugging Tools for Windows |
The following global options affect the behavior of the debugger engine.
Value | Effect when set |
---|---|
DEBUG_ENGOPT_IGNORE_DBGHELP_VERSION | The debugger engine generates a warning instead of an error if the version of the DbgHelp DLL does not match the version of the debugger engine. |
DEBUG_ENGOPT_IGNORE_EXTENSION_VERSIONS | Disable version checking for extensions. This suppresses the debugger engine's call to CheckVersion. |
DEBUG_ENGOPT_ALLOW_NETWORK_PATHS | Network shares can be used for loading symbols and extensions. This option prevents the engine from disallowing network paths when debugging some system processes and should be used with caution. This option cannot be set if DEBUG_ENGOPT_DISALLOW_NETWORK_PATHS is set. |
DEBUG_ENGOPT_DISALLOW_NETWORK_PATHS | Network shares cannot be used for loading symbols and extensions. The engine attempts to set this option when debugging some system processes. This option cannot be set if DEBUG_ENGOPT_ALLOW_NETWORK_PATHS is set. |
DEBUG_ENGOPT_IGNORE_LOADER_EXCEPTIONS | Ignore expected first-chance exceptions that are generated by the loader in certain versions of Windows. For example, this option allows Windows 3.51 binaries to run when debugging Windows 3.1 and 3.5 systems. |
DEBUG_ENGOPT_INITIAL_BREAK | Break into the debugger at the target's initial event. |
DEBUG_ENGOPT_INITIAL_MODULE_BREAK | Break into the debugger when the target loads its first module. |
DEBUG_ENGOPT_FINAL_BREAK | Break into the debugger at the target's final event. In a live user-mode target, this is when the process exits. It has no effect in kernel mode. |
DEBUG_ENGOPT_NO_EXECUTE_REPEAT | When given an empty command, the debugger engine does not repeat the last command. |
DEBUG_ENGOPT_FAIL_INCOMPLETE_INFORMATION | Prevent the debugger from loading modules whose images cannot be mapped. The debugger attempts to load images when debugging minidumps that do not contain images. |
DEBUG_ENGOPT_ALLOW_READ_ONLY_BREAKPOINTS | Allow the debugger engine to manipulate page protections on the target to allow for setting software breakpoints in a read-only section of memory. When setting software breakpoints, the engine transparently alters the target's memory to insert an interrupt instruction. |
DEBUG_ENGOPT_SYNCHRONIZE_BREAKPOINTS | In live user-mode debugging, the engine performs extra work when inserting and removing breakpoints to ensure that all threads in the target have a consistent breakpoint state at all times. This option is useful when multiple threads can use the code for which the breakpoint is set. However, it can introduce the possibility of deadlocks. |
DEBUG_ENGOPT_DISALLOW_SHELL_COMMANDS | Disallow executing shell commands through the debugger. After this option has been set, it cannot be unset. |
DEBUG_ENGOPT_KD_QUIET_MODE | Turn on quiet mode. For more information, see sq (Set Quiet Mode). |
DEBUG_ENGOPT_DISABLE_MANAGED_SUPPORT | Disables debugger engine support for managed code. If support for managed code is already in use, this option has no effect. |
DEBUG_ENGOPT_DISABLE_MODULE_SYMBOL_LOAD | The debugger does not load symbols for modules that are loaded while this flag is set. |
DEBUG_ENGOPT_DISABLE_EXECUTION_COMMANDS | Prevents any commands that would cause the target to begin executing. |
Headers: Defined in DbgEng.h. Include DbgEng.h.
AddEngineOptions, GetEngineOptions, RemoveEngineOptions, SetEngineOptions