Debugging Tools for Windows |
!gflag 扩展设置或显示全局标志。
!gflag {+|-} Abbreviation
!gflag -?
!gflag
Windows 2000 | Kdextx86.dll Ntsdexts.dll |
Windows XP和之后 | Exts.dll |
如果没有指定任何参数,!gflag 显示当前的全局标志设置。
下面是Abbreviation 参数可用的缩写的表格。
值 | 名字 | 说明 |
---|---|---|
0x00000001 | "soe" | 异常时停止。 |
0x00000002 | "sls" | 显示加载器快照(loader snaps)。 |
0x00000004 | "dic" | 调试初始命令。 |
0x00000008 | "shg" | 如果GUI停止响应(即hang)则停止。 |
0x00000010 | "htc" | 启用堆尾部检查。 |
0x00000020 | "hfc" | 启用堆释放检查。 |
0x00000040 | "hpc" | 启用堆参数检查。 |
0x00000080 | "hvc" | 调用时进行堆的确认。 |
0x00000100 | "ptc" | 启用内存池尾部(pool tail)检查。 |
0x00000200 | "pfc" | 启用内存池释放检查. |
0x00000400 | "ptg" | 启用内存池标记(tagging)。 |
0x00000800 | "htg" | 启用堆标记。 |
0x00001000 | "ust" | 创建一个用户模式堆栈回溯DB。 |
0x00002000 | "kst" | 创建一个内核模式堆栈回溯DB。 |
0x00004000 | "otl" | 维护一个每种类型的对象列表。 |
0x00008000 | "htd" | 通过DLL启用堆标记。 |
0x00010000 | "idp" | 未使用。 |
0x00020000 | "d32" | 启用对Microsoft Win32子系统的调试。 |
0x00040000 | "ksl" | 启用对内核调试器符号的加载。 |
0x00080000 | "dps" | 禁止对内核堆栈分页。 |
0x00100000 | "scb" | 启用紧急系统中断(critical system breaks)。 |
0x00200000 | "dhc" | 禁止在堆释放时进行合并。 |
0x00400000 | "ece" | 启用关闭异常(close exception)。 |
0x00800000 | "eel" | 启用异常日志。 |
0x01000000 | "eot" | 启用对象句柄类型标记(object handle type tagging)。 |
0x02000000 | "hpa" | 将堆分配放到页面末尾(Put heap allocations at the end of pages)。 |
0x04000000 | "dwl" | 调试WINLOGON。 |
0x08000000 | "ddp" | 禁止内核模式的DbgPrint 和KdPrint 输出。 |
0x10000000 | NULL | 未使用。 |
0x20000000 | NULL | 未使用。 |
0x40000000 | NULL | 未使用。 |
0x80000000 | "dpd" | 禁止保护DLL验证(protected DLL verification)。 |
也可以使用全局标志实用程序(Gflags.exe)来设置这些标志。