Debugging Tools for Windows
!gflag
The !gflag extension sets or displays the global flags.
Syntax
!gflag [+|-] Value
!gflag {+|-} Abbreviation
!gflag -?
!gflag
Parameters
- Value
- Specifies a 32-bit hexadecimal number. If you do not use a plus sign (+) or minus sign (-), this number becomes the new value of the global flag bit field. If you add a plus sign (+) before this number, the number specifies one or more global flag bits to set to 1. If you add a minus sign (-) before this number, the number specifies one or more global flag bits to set to zero.
- Abbreviation
- Specifies a single global flag. Abbreviation is a three-letter abbreviation for a global flag that is set to 1 (+) or to zero (-).
- -?
- Displays some Help text for this extension, including a list of global flag abbreviations, in the Debugger Command window.
DLL
| Windows 2000 | Kdextx86.dll Ntsdexts.dll |
| Windows XP and later | Exts.dll |
Comments
If you do not specify any arguments, the !gflag extension displays the current global flag settings.
The following table contains the abbreviations that you can use for the Abbreviation parameter.
| Value | Name | Description |
| 0x00000001 | "soe" | Stop on exception. |
| 0x00000002 | "sls" | Show loader snaps. |
| 0x00000004 | "dic" | Debug initial command. |
| 0x00000008 | "shg" | Stop if the GUI stops responding (that is, hangs). |
| 0x00000010 | "htc" | Enable heap tail checking. |
| 0x00000020 | "hfc" | Enable heap free checking. |
| 0x00000040 | "hpc" | Enable heap parameter checking. |
| 0x00000080 | "hvc" | Enable heap validation on call. |
| 0x00000100 | "ptc" | Enable pool tail checking. |
| 0x00000200 | "pfc" | Enable pool free checking. |
| 0x00000400 | "ptg" | Enable pool tagging. |
| 0x00000800 | "htg" | Enable heap tagging. |
| 0x00001000 | "ust" | Create a user-mode stack trace DB. |
| 0x00002000 | "kst" | Create a kernel-mode stack trace DB. |
| 0x00004000 | "otl" | Maintain a list of objects for each type. |
| 0x00008000 | "htd" | Enable heap tagging by DLL. |
| 0x00010000 | "idp" | Unused. |
| 0x00020000 | "d32" | Enable debugging of the Microsoft Win32 subsystem. |
| 0x00040000 | "ksl" | Enable loading of kernel debugger symbols. |
| 0x00080000 | "dps" | Disable paging of kernel stacks. |
| 0x00100000 | "scb" | Enable critical system breaks. |
| 0x00200000 | "dhc" | Disable heap coalesce on free. |
| 0x00400000 | "ece" | Enable close exception. |
| 0x00800000 | "eel" | Enable exception logging. |
| 0x01000000 | "eot" | Enable object handle type tagging. |
| 0x02000000 | "hpa" | Put heap allocations at the end of pages. |
| 0x04000000 | "dwl" | Debug WINLOGON. |
| 0x08000000 | "ddp" | Disable kernel-mode DbgPrint and KdPrint output. |
| 0x10000000 | NULL | Unused. |
| 0x20000000 | NULL | Unused. |
| 0x40000000 | NULL | Unused. |
| 0x80000000 | "dpd" | Disable protected DLL verification. |
Additional Information
You can also set these flags by using the Global Flags utility (Gflags.exe).
Build machine: CAPEBUILD