| Previous | Next |
| RO_E_METADATA_NAME_NOT_FOUND | RO_E_METADATA_INVALID_TYPE_FORMAT |
RO_E_METADATA_NAME_IS_NAMESPACE
Metadata name identifies a namespace instead of a type
RO_E_METADATA_NAME_IS_NAMESPACE is HRESULT 2147483664 (0x80000010) from winerror.h. The documented description is “Name is an existing namespace rather than a typename.” The relevant context is the Windows Runtime metadata, object lifetime, asynchronous operation, activation, and apartment model.
What to verify
Verify that the caller distinguishes namespace enumeration from type resolution and supplies the complete leaf type name.
Where it is encountered
- C++/WinRT, WRL, .NET projections, or native WinRT ABI calls.
- Runtime-class activation, WinMD reflection, asynchronous objects, observable state, or view lifecycle.
- Cross-thread and cross-apartment handoff between UI, ASTA, STA, MTA, broker, and background work.
The immediate focus is a WinRT metadata request that expects a concrete runtime class, interface, enum, or delegate but receives a namespace path.
Correct handling and recovery
Append or select the intended type, or switch to a namespace-enumeration API. Do not attempt activation with the namespace token.
An unchanged retry loop can duplicate effects, deepen reentrancy, or hide an invalid lifetime transition.
Difference from nearby HRESULTs
It confirms that the prefix exists; RO_E_METADATA_NAME_NOT_FOUND says neither a type nor namespace matched.
Developer and administrator guidance
After it, avoid broad permission grants or system-wide resets unless code-specific evidence proves a global configuration problem.
Practical scenario
A reflection tool tries to activate Windows.Storage. It enumerates types in that namespace and then selects Windows.Storage.StorageFile.
References
Looking for a different code? Search another status or error code.
