Skip to content

win-dumpconfigurator: Confusing kdbgctrl.exe debug output shown to users #121

@sdolgin

Description

@sdolgin

The win-dumpconfigurator.ps1 script passes raw kdbgctrl.exe output directly through Log-Output without filtering, resulting in confusing internal debug messages being displayed to users. Other scripts in this repo (e.g., win-toggle-safe-mode.ps1, win-sfc-sf-corruption.ps1) parse and filter external tool output before logging. This script should follow the same pattern.

Current output

[Output] User Requested dump type is full  Dump type from system registry is Invalid  
Change the dump type on the System  lastError after QueryDosDevice call is 3 
Result of core dump Handle to increase pagefile is success  Successfully updated dump settings

Confusing messages:

  • Dump type from system registry is Invalid — Appears to be an error, but is actually expected. The script intentionally sets CrashDumpEnabled=0 before calling kdbgctrl, so kdbgctrl reads "0" and reports it as "Invalid".
  • lastError after QueryDosDevice call is 3 — Internal Win32 debug trace (ERROR_PATH_NOT_FOUND) that kdbgctrl logs after a QueryDosDevice call. Not user-actionable and does not indicate failure.

Expected output

[Output] Current dump configuration: Automatic (7)
[Output] Requested dump type: full (Complete Memory Dump (CrashDumpEnabled=1))
[Output] DumpFile path set to: %SystemRoot%\Memory.dmp
[Output] Successfully updated dump settings to 'full' via kdbgctrl.
[Output] Verified dump configuration:
[Output]   CrashDumpEnabled : Complete/Full (1)
[Output]   DumpFile         : C:\Windows\Memory.dmp

Proposed fix

  1. Parse kdbgctrl.exe output for success/failure instead of raw passthrough
  2. Log before/after configuration with human-readable dump type names
  3. Verify final configuration by reading back the registry
  4. Use Log-Error for actual failures, Log-Warning/Log-Debug for unexpected output

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions