例 8: User-Mode スタック トレース データベースの拡大
次の GFlags コマンドは、架空のプログラムである myapp.exeのユーザー モード スタック トレース データベースの最大サイズを 8 MB から 24 MB に増やします。
このコマンドでは、/i パラメーターを使用してイメージ ファイルを指定します。 /tracedb パラメーターを使用して、スタック トレース データベースの最大サイズと値 24 を MB 単位で設定します。 コマンドは 10 進単位を使用します。 (16 進数の単位は無効です)。
gflags /i MyApp.exe /tracedb 24
次のエラー メッセージが示すように、このコマンドは失敗します。MyApp イメージ ファイルに対して ユーザー モード スタック トレース データベースの作成 (+ust) フラグが設定されていないためです。 トレース データベースのサイズは、作成するまで設定できません。
Failed to set the trace database size for `MyApp.exe'
次のコマンドを実行すると、エラーが修正されます。 最初のコマンドは myapp.exe のトレース データベースを作成し、2 番目のコマンドはトレース データベースの最大サイズを 24 MB に設定します。 これらのコマンドを 1 つのコマンドに結合することはできません。 次の表示は、GFlags からのコマンドと成功メッセージを示しています。
gflags /i MyApp.exe +ust
Current Registry Settings for MyApp.exe executable are: 00001000
ust - Create user mode stack trace database
gflags /i MyApp.exe /tracedb 24
Trace database size for `MyApp.exe' set to 24 Mb.
GFlags は、ユーザー モード スタック トレース データベースのサイズを変更できますが、表示されません。 トレース データベースのサイズを表示するには、レジストリ API または Regedit を使用して、StackTraceDatabaseSizeInMB レジストリ エントリ (HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\ImageFileName\StackTraceDatabaseSizeInMB) の値を確認します。
次のコマンドでは、Reg を使用して、StackTraceDatabaseSizeInMBの値を照会します。
reg query "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MyApp.exe" /v StackTraceDatabaseSizeInMB
これに対して、Reg StackTraceDatabaseSizeInMBの値が表示され、新しい値 24 (0x18) が設定されたことが確認されます。 この値は、myapp.exe再起動すると有効になります。
! REG.EXE VERSION 3.0
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MyApp.exe
StackTraceDatabaseSizeInMB REG_DWORD 0x18
ヒントreg クエリ コマンドをメモ帳に入力し、ファイルを tracedb.batとして保存します。 その後、