Beispiel 8: Enlarging der Stapelüberwachungsdatenbank für den Benutzermodus
Der folgende GFlags-Befehl erhöht die maximale Größe der Stack-Trace-Datenbank im Benutzermodus für myapp.exe, ein fiktives Programm, von 8 MB auf 24 MB.
Der Befehl verwendet den parameter /i, um die Bilddatei anzugeben. Er verwendet den Parameter /tracedb, um die maximale Größe der Stapelverfolgungsdatenbank festzulegen und den Wert 24 anzugeben, um die Größe in Megabyte zu bestimmen. Der Befehl verwendet dezimale Einheiten. (Hexadezimale Einheiten sind nicht gültig.)
gflags /i MyApp.exe /tracedb 24
Wie die folgende Fehlermeldung zeigt, schlägt dieser Befehl fehl, weil die Stack-Trace-Datenbank im Benutzermodus erstellen (+ust) ist für die MyApp-Image-Datei nicht gesetzt. Sie können die Größe einer Trace-Datenbank erst festlegen, wenn Sie eine erstellen.
Failed to set the trace database size for `MyApp.exe'
Die folgenden Befehle beheben den Fehler. Mit dem ersten Befehl wird eine Ablaufverfolgungsdatenbank für myapp.exe erstellt, und der zweite Befehl legt die maximale Größe der Ablaufverfolgungsdatenbank auf 24 MB fest. Diese Befehle können nicht in einem einzigen Befehl kombiniert werden. Die folgende Anzeige zeigt die Befehle und die Erfolgsmeldung von 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.
The following display shows the commands and the success message from GFlags. Um die Größe der Trace-Datenbank anzuzeigen, verwenden Sie Registry-APIs oder Regedit, um den Wert des Parameters StackTraceDatabaseSizeInMB Registrierungseintrag (HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\BildDateiname\StackTraceDatabaseSizeInMB).
Der folgende Befehl verwendet Reg, um den Wert von StackTraceDatabaseSizeInMBabzufragen:
reg query "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MyApp.exe" /v StackTraceDatabaseSizeInMB
Als Antwort zeigt Reg den Wert StackTraceDatabaseSizeInMBan, der bestätigt, dass der neue Wert 24 (0x18) festgelegt wurde. Dieser Wert wird wirksam, wenn Sie myapp.exeneu starten.
! REG.EXE VERSION 3.0
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MyApp.exe
StackTraceDatabaseSizeInMB REG_DWORD 0x18
Tipp Geben Sie die Reg-Abfrage in Notepad ein, und speichern Sie die Datei als tracedb.bat. Um anschließend den Wert StackTraceDatabaseSizeInMBanzuzeigen, geben Sie einfach TraceDbein.