| Previous | Next |
| ERROR_WMI_INVALID_MOF | ERROR_WMI_ALREADY_DISABLED |
ERROR_WMI_INVALID_REGINFO
The registration buffer does not describe a valid provider contract
Kernel WMI registration is binary data, not a registry convenience setting. The provider returns a WMIREGINFO structure followed by WMIREGGUID entries and, where needed, static instance-name data. Invalid size fields, counts, offsets, strings, or GUID entries can make WMI reject the registration before any client request is dispatched.
Offsets in this structure are relative to the beginning of the registration buffer, and the buffer must include every advertised data block, event block, and required instance information. A failure can occur only on a particular device or build when an optional block changes the calculated layout.
What to validate in the provider
- Calculate the complete buffer size with overflow checks before writing any offsets or variable strings.
- Verify
GuidCount, everyWMIREGGUID, and each static instance name against the final allocated buffer. - Exercise both initial registration and the update path that adds, removes, or changes a block.
References
- Windows WDK: IRP_MN_REGINFO_EX structure and offsets
- Windows WDK: registration flag semantics
- Windows WDK: provider callback requirements
Looking for a different code? Search another status or error code.
