What does Windows error code 1911 (OR_INVALID_OID) mean?

 
Previous Next
OR_INVALID_OXID OR_INVALID_SET

OR_INVALID_OID

The referenced exported DCOM object is no longer registered.

OR_INVALID_OID is Win32 status 1911 (0x777). An OID identifies an exported COM object within the DCOM object resolver’s lifetime tables. It is embedded in a marshaled reference together with exporter and interface information. The status means the specific object entry cannot be found, commonly because its server released it or the reference belongs to an earlier lifetime.

How an object identity becomes stale

  • all server-side references were released and the object was removed from resolver tracking
  • the server process restarted and recreated similar objects with new identities
  • a client retained or persisted a proxy beyond the object’s supported lifetime
  • distributed garbage collection expired the object after connectivity loss
  • custom marshaling or serialization supplied an OID from another OBJREF or exporter

Object-lifetime evidence

Capture the activation or factory operation that produced the proxy, server process start time, CLSID and IID, client proxy lifetime, last successful call, disconnect interval, server release or cleanup events, and protected OID/OXID correlation. Record whether multiple clients share the object and whether reconnection crossed a server restart. Avoid treating the OID as an application-level permanent object ID.

How to diagnose the missing object

Verify that the exporter process is still running and that other newly activated objects work. Obtain a fresh object through its factory or service API. If only the old proxy fails, inspect reference retention, application caching, and server-side object lifetime rather than general RPC connectivity.

For intermittent network partitions, review DCOM ping and garbage-collection timing. For custom marshaling, validate that the OID remains paired with the original OXID and IPID. Do not replay raw OBJREF data from disk unless the component explicitly documents persistence.

Recovery and API behavior

Release the invalid proxy and reacquire the logical object through an application-defined key or factory. Reconstruct any client state and make the operation idempotent before retrying. If the object represents a transaction or session, assume that its server-side state may be gone.

Design distributed COM clients with reconnection boundaries above individual interface pointers. Servers should expose durable application identifiers separately from DCOM OIDs and log object creation and release with safe correlation values.

Difference from an invalid exporter or interface pointer

OR_INVALID_OXID means the entire exporter entry is unknown. An invalid IPID or interface error concerns a particular interface reference. Error 1911 identifies the exported object entry represented by the OID.

Example

A client caches a COM session object overnight. The server releases idle sessions while remaining online. The next method call returns 1911: the exporter still works, but that session OID is gone. Creating a new session through the factory is the correct recovery.

References


Looking for a different code? Search another status or error code.