- Symbolic Constant:
ERROR_INVALID_CATEGORY
- Decimal Value:
115
- Hexadecimal Value:
0x00000073
- Explanation:
The specified category does not exist. This error typically arises when a control function is called on a device with an unsupported or undefined category.
🔸 Root Causes
- Passing an unsupported control category to
DeviceIoControl
or similar APIs. - Using obsolete or incorrect control codes on legacy hardware drivers.
- Mismatched IOCTL definitions between caller and driver.
- Calling a driver with a category it does not implement.
🔸 Step-by-step Fixes
✅ 1. Validate IOCTL Category
Ensure that the control code passed to DeviceIoControl
is supported by the device or driver.
✅ 2. Match Driver and Control Code
Ensure user-mode code aligns with kernel-mode driver expectations.
✅ 3. Update or Reinstall Driver
If the category was once supported, the driver might be outdated or corrupt.
✅ 4. Use Properly Defined Control Codes
Define IOCTLs using correct CTL_CODE macros:
c#define IOCTL_MY_CATEGORY CTL_CODE(FILE_DEVICE_UNKNOWN, 0x800, METHOD_BUFFERED, FILE_ANY_ACCESS)
🔸 Authoritative References
🔸 Technical Metadata
- SEO Title: How to Fix ERROR_INVALID_CATEGORY (0x00000073) in Windows
- Meta Description: ERROR_INVALID_CATEGORY (0x00000073) occurs when a control request references an unsupported category. Learn how to define and call IOCTLs properly.
- Hashtags:
#ERROR_INVALID_CATEGORY #IOCTL #DeviceIoControl #DriverCommunication #Win32Errors #WindowsDrivers #MicrosoftDocs #CTL_CODE #KernelMode #SystemError #0x00000073 - Tags:
ERROR_INVALID_CATEGORY, error 0x00000073, DeviceIoControl error, unsupported control category, IOCTL mismatch, CTL_CODE definition, legacy driver error, Windows device control, fix 0x00000073, control code error, 0x00000073, - SEO Keywords:
ERROR_INVALID_CATEGORY, fix error 0x00000073, IOCTL error Windows, DeviceIoControl failure, unsupported control code, driver control category invalid, CTL_CODE mismatch, Windows error 0x00000073, invalid category IOCTL, Win32 kernel IO error, 0x00000073