| Previous | Next |
| STATUS_INSUFFICIENT_RESOURCE_FOR_SPECIFIED_SHARED_SECTION_SIZE | STATUS_NTLM_BLOCKED |
STATUS_INVALID_CRUNTIME_PARAMETER
Capture the CRT invalid-parameter callback before the default termination path erases context
STATUS_INVALID_CRUNTIME_PARAMETER is tied to the Microsoft C runtime invalid-parameter mechanism. CRT functions that validate arguments can invoke the invalid-parameter handler. Microsoft documents thread-local and global handlers and states that, when no custom handler is installed, the default path calls _invoke_watson.
The failure is usually closer to the caller than to the operating system. Preserve the function, expression, source file, line, and thread context delivered to the handler when available. An access violation later in the process is a worse diagnostic signal because it may occur only after code continues with an invalid size, null pointer, malformed format argument, or other rejected parameter.
Do not globally suppress the handler just to keep the application running. Install a diagnostic handler in controlled builds or capture a dump at the first invalid-parameter event, then fix the call contract. Also verify that caller and CRT-facing declarations agree on structure layout and calling convention when the bad parameter appears after a binary or toolset upgrade.
What to inspect
- The CRT function, invalid expression/parameter details, source location, and thread stack at the first handler invocation.
- Recent changes to sizes, buffer counts, format strings, nullability assumptions, or ABI boundaries.
- Whether a thread-local or global invalid-parameter handler changes the default behavior or hides repeated failures.
References
Looking for a different code? Search another status or error code.
