| Previous | Next |
| STATUS_INVALID_USER_PRINCIPAL_NAME | STATUS_ASSERTION_FAILURE |
STATUS_FATAL_USER_CALLBACK_EXCEPTION
An exception escaped from a user callback
Windows invokes some user-mode code through kernel-managed callback transitions, including GUI and subsystem callbacks. If an exception escapes that callback instead of being handled inside its user-mode boundary, Windows reports this fatal wrapper status. The callback site is important, but the nested or preceding exception usually contains the actual defect such as an access violation, invalid parameter, or language exception.
Do not diagnose the wrapper code as the sole cause. Correlate Application Error events by process and time, and inspect the dump for the earlier exception record. Window procedures, hooks, and framework callbacks should not allow C++ or other language exceptions to cross an ABI boundary that does not define their propagation.
What to inspect
- Identify the callback type and the user function invoked by the transition.
- Locate the nested or immediately preceding exception in the dump or event log.
- Check language and module boundaries for exceptions escaping through C callbacks.
- Fix the original callback failure instead of suppressing the wrapper status.
References
- Microsoft Open Specifications: NTSTATUS values
- Microsoft Windows SDK metadata: ntstatus.h
- Windows Research Kernel source: user callback return handling
- Microsoft Learn: Exception Dispatching
Looking for a different code? Search another status or error code.
