| Previous | Next |
| CAT_E_CATIDNOEXIST | CS_E_PACKAGE_NOTFOUND |
CAT_E_NODESCRIPTION
Description not found
When Windows returns CAT_E_NODESCRIPTION—HRESULT 2147746145, 0x80040161, signed -2147221151—The documented description is “Description not found”. The actionable meaning is a registered component category has no description for the requested locale or usable fallback. The surrounding operation is retrieving CATEGORYINFO text while enumerating or displaying component categories.
Precise failure point
Component categories are semantic identifiers, not merely friendly strings. Category definition, localized description, and class membership are separate records and should be diagnosed independently.
- Associate this result with one exact operation in the Component Categories Manager, ICatRegister, ICatInformation, CATID registration, and localized CATEGORYINFO descriptions.
- Confirm that this result came from retrieving CATEGORYINFO text while enumerating or displaying component categories, rather than from cleanup or a wrapper that ran afterward.
Diagnostic evidence
A useful incident records the CATID, locale identifier, operation, registry scope, category description, enumerator result, class membership keys, and installation or uninstallation transaction.
- Capture CATID, requested LCID, installed descriptions, and UI language chain.
- Verify that category identity and class membership remain valid without the label.
- Test neutral or product-default locale fallback according to application policy.
Resolution path
- Identify the exact object, method, and lifecycle phase involved in retrieving CATEGORYINFO text while enumerating or displaying component categories.
Distinct causes
- It can result when the category was registered without the current LCID.
- It can result when localization resources were omitted from installation.
- It can result when the caller requests an overly specific locale and does not implement an appropriate fallback.
Retry policy
Correction. show a stable CATID-based fallback or install the missing localized description while preserving category identity. Retry condition. Retry after locale fallback or registration repair; do not treat a missing label as proof that member classes are unusable. Before repeating the operation, separate category definition changes from class-membership changes and roll back only the registration operation that failed.
Practical scenario
A management console requests a Finnish category description from a component that registered only en-US; it displays the en-US label and CATID instead of hiding the plugins.
Difference from related HRESULTs
CAT_E_CATIDNOEXIST means no category definition exists; it is a localization/metadata gap for an existing CATID.
Developer and administrator guidance
Store CATIDs as stable identifiers, keep localized descriptions independent from membership, and enumerate current records before updating them. Regression coverage should include unknown CATIDs, missing localized descriptions, repeated registration, class membership without a definition, different locales, and uninstall ordering.
Repair category metadata through the owning component’s installer and verify both category definitions and class membership instead of editing only the friendly description.
References
Looking for a different code? Search another status or error code.
