GFlags 通过编辑 Windows 注册表和内部设置来启用或禁用系统功能。 本部分详细介绍了 GFlags 的操作,并包含关于最有效使用 GFlags 的提示。
常规信息
若要显示 GFlags 对话框,请在命令行中键入 gflags (无参数)。
GFlags 系统级注册表设置立即显示在注册表中,但在重启系统之前不会生效。
GFlags 映像文件注册表设置会立即显示在注册表中,但在重启进程之前不会生效。
GFlags 对话框中的调试器和启动功能特定于程序。 一次只能在一个图像文件上设置它们。
标志详细信息
若要清除所有标志,请将标志设置为 -FFFFFFFF。 将标志设置为 0 会将 0 添加到当前标志值。
将映像文件的标志设置为 FFFFFFFF (0xFFFFFFFF),Windows 将清除映像文件的所有标志,并删除映像文件注册表项中的 GlobalFlag 条目。 图像文件的注册表键已保留。
对话框和命令行
可以使用其方便的对话框或命令行运行 GFlags。 这两种形式都提供了大多数功能,但有以下例外情况。
仅限对话框
发射。 使用指定的标志启动程序。
在调试器中运行程序。
特殊池用于 Windows Vista 之前的系统。 在 Windows Vista 和更高版本的 Windows 上,可以在命令行或 Gflags 对话框中配置特殊池功能。
仅命令行
设置用户模式堆栈跟踪数据库(/tracedb)的大小。
设置页面堆验证选项。
注册表信息
在会话之间保存的 GFlags 设置存储在注册表中。 可以使用注册表 API、Regedit 或 reg.exe 查询或更改这些值。 下表列出了设置的类型及其存储在注册表中的位置。
| 设置类型 | 注册表位置 |
|---|---|
| 系统级设置(注册表) | HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\GlobalFlag |
| 特定程序的设置(“映像文件”)适用于计算机的所有用户。 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\ImageFileName\GlobalFlag |
| 特定程序的无提示退出设置(“无提示进程退出”)适用于计算机的所有用户。 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SilentProcessExit\ImageFileName |
| 计算机的所有用户的图像文件的页堆选项 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\ImageFileName\PageHeapFlags |
| 用户模式堆栈跟踪数据库大小 (tracedb) | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\ImageFileName\StackTraceDatabaseSizeInMb |
| 为图像文件创建用户模式堆栈跟踪数据库(ust、0x1000) | Windows 将映像文件名添加到 USTEnabled 注册表项的值(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\USTEnabled)。 |
| 在可能的情况下大型页加载映像 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\ImageFileName\UseLargePages。 |
| 特殊池(内核特殊池标记) | HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PoolTag |
| 验证开始/验证结束 | HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PoolTagOverruns。 “ 验证开始 ”选项将值设置为 0。 “ 验证结束 ”选项将值设置为 1。 |
| 映像文件的调试器 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\ImageFileName\调试器 |
| 对象引用跟踪 | HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel\ObTraceProcessName、 ObTracePermanent 和 ObTracePoolTags |