What does HRESULT 0x800401EE (MK_E_NOPREFIX) mean?

 
Previous Next
MK_E_NOSTORAGE MK_E_ENUMERATION_FAILED

MK_E_NOPREFIX

No common prefix

Windows defines MK_E_NOPREFIX as 2147746286 (0x800401EE; signed value -2147221010). The documented description is “No common prefix”. Two monikers have no common prefix under their class-specific comparison rules. The relevant operation is calling IMoniker::CommonPrefixWith for relative naming or link simplification.

Where it is raised

  • Confirm that this result came from calling IMoniker::CommonPrefixWith for relative naming or link simplification, rather than from cleanup or a wrapper that ran afterward.

Telemetry checklist

  • Log both moniker classes and canonical display names.
  • Compare reduced forms before CommonPrefixWith.
  • treat the result as a valid comparison outcome rather than corruption.

Why it is specific

  • It can result when the monikers refer to unrelated roots, servers, files, or namespaces.
  • It can result when different moniker classes cannot establish a shared prefix.
  • It can result when normalization differences prevent a prefix that textual comparison appears to show.

Investigation order

  1. Identify the exact object, method, and lifecycle phase involved in calling IMoniker::CommonPrefixWith for relative naming or link simplification.

Safe handling

Correction. retain absolute monikers or choose another relation strategy; no repair is required when unrelated names are expected. Retry condition. Do not retry unless one moniker changes or is reduced to a comparable form. Before repeating the operation, release partial monikers and bound interfaces, unregister only owned Running Object Table entries, and abandon a bind context whose deadline or parameters no longer match the retry.

Practical scenario

Two document links reside on different servers, so no shared file-moniker prefix exists; the application stores both absolute links.

Difference from related HRESULTs

MK_E_NEEDGENERIC concerns composition representation; it concerns comparison and may be an expected nonmatch.

Developer and administrator guidance

References


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