errnfo: decode first, hunt less
When logs only give you raw hex, errnfo turns numbers into structured meaning and relevant message text fast.
Date: February 01, 2026
Quick Value
_test\errnfo.exe hr 0x80070005
HRESULT value: 0x80070005 facility: 0x007 (7) FACILITY_WIN32 code: 0x0005 (5) message: Access is denied. [(system)]
This is exactly the triage speed you want in incident response and build-failure debugging.
Workflow 1: Build Your Message-Table Arsenal
Scan known system locations once, keep the module list for future decode sessions.
_test\errnfo.exe scan C:\Windows\System32 | Select-Object -First 8
-m "C:\Windows\System32\aadcloudap.dll" -m "C:\Windows\System32\aadtb.dll" -m "C:\Windows\System32\aadWamExtension.dll" -m "C:\Windows\System32\accountaccessor.dll"
Now you have copy-pasteable module flags to improve coverage when system messages are missing.
Workflow 2: Inspect One Module Deeply
_test\errnfo.exe dump wininet.dll --tables
table #1 lang 0x0409 blocks 36
Use dump when you suspect the text exists, but you need to prove where it lives and which language table has it.
Guardrails
errnfo is an error intelligence tool, not a root-cause engine. It gives you high-quality semantic context; your call stack and environment still decide the true fix.