What does HRESULT 0x80040169 (CS_E_OBJECT_NOTFOUND) mean?

 
Previous Next
CS_E_NO_CLASSSTORE CS_E_OBJECT_ALREADY_EXISTS

CS_E_OBJECT_NOTFOUND

There is no software installation data object in the Active Directory.

CS_E_OBJECT_NOTFOUND is the failure HRESULT 2147746153 (0x80040169, signed -2147221143) from winerror.h. The documented description is “There is no software installation data object in the Active Directory.” In practical terms, a referenced software-installation object cannot be found in the directory. Interpret it in the context of following a stored object reference during package or class resolution.

Relevant contract

These CS_E values describe the legacy directory-backed COM Class Store. Public documentation is limited; the exact owner is the component performing automatic installation or directory lookup, so traces must identify that component rather than assigning the HRESULT to every modern COM activation path.

  • Associate this result with one exact operation in automatic class installation or lookup through COM Class Store policy and directory-backed software-installation objects.
  • Confirm that this result came from following a stored object reference during package or class resolution, rather than from cleanup or a wrapper that ran afterward.

Likely cause branches

  • It can result when the target was deleted while stale references remain.
  • It can result when the distinguished name changed during migration.
  • It can result when the contacted controller has not received the object or its tombstone state differs.

Evidence to preserve

A useful incident records the requested CLSID or ProgID, directory object DN, package identifier, version, deployment path, domain controller, schema version, policy state, bind result, and object size.

  • Log the referenced DN/GUID and the object that contains the reference.
  • query by immutable directory identity as well as distinguished name.
  • Inspect replication and deletion metadata before recreating anything.

Diagnostic sequence

  1. Identify the exact object, method, and lifecycle phase involved in following a stored object reference during package or class resolution.

Recovery and retry

Correction. repair the stale reference or restore/republish the authoritative object, then allow replication to settle. Retry condition. Retry on another controller only to diagnose replication; durable recovery requires consistent directory data. Before repeating the operation, determine whether directory metadata, package staging, or a local installation changed before failure and avoid deleting a directory object whose ownership is not established.

Practical scenario

A class mapping still points to a package object removed during a failed upgrade; republishing the package and updating the mapping removes the orphan.

Difference from related HRESULTs

CS_E_PACKAGE_NOTFOUND is a failed criteria search; it is a broken reference to a particular directory object.

Developer and administrator guidance

Involve the Active Directory or software-deployment owner, verify policy and domain-controller evidence, and use the management system that created the package or class-store object.

References


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