| Previous | Next |
| CO_E_PATHTOOLONG | CO_E_FAILEDTOCREATEFILE |
CO_E_FAILEDTOGENUUID
COM could not generate a UUID for access-control persistence
CO_E_FAILEDTOGENUUID is HRESULT 2147549494 (0x80010136) from winerror.h. The documented description is “Unable to generate a uuid.” The relevant context is the COM IAccessControl, DCOM client identity, trustee translation, token inspection, security descriptor, ACL, or serialization workflow.
What to verify
Verify that the UUID API result, RPC runtime state, system health, and collision-handling path are captured. That boundary prevents this result from being misclassified as corruption, network failure, or a reason for an unsafe automatic retry.
Where it is encountered
- This result can be returned during IAccessControl initialization, access checks, owner/trustee processing, and serialized ACL persistence.
- This result can be returned during server-side DCOM impersonation, client blanket inspection, token and SID lookup.
- It can be returned during security descriptor construction, DACL canonicalization, file-backed policy storage, or legacy NetAccess migration.
The immediate focus is creation of a unique identifier for serialization files, access-control objects, or temporary state.
Correct handling and recovery
Treat identifier generation as a hard precondition, repair runtime or entropy failures, and never substitute timestamps or predictable counters for security-sensitive identity.
An unchanged retry loop can duplicate effects, deepen reentrancy, or hide an invalid lifetime transition.
Difference from nearby HRESULTs
It precedes file creation; CO_E_FAILEDTOCREATEFILE means an identifier or path was available but opening storage failed.
The distinction around it should be represented explicitly in control flow and operational dashboards.
Developer and administrator guidance
Change the smallest component, identity, ACL, package, or threading boundary that the evidence identifies, then reproduce the same operation.
Practical scenario
An access-control save cannot obtain a UUID and therefore does not create a shared temporary filename. Diagnostics capture the native RPC status.
References
Looking for a different code? Search another status or error code.
