What does HRESULT 0xC00D108C (NS_E_WMPCORE_ERRORSINKNOTREGISTERED) mean?

 
Previous Next
NS_E_WMPCORE_PLAYLIST_EMPTY_OR_SINGLE_MEDIA NS_E_WMPCORE_ERRORMANAGERNOTAVAILABLE

NS_E_WMPCORE_ERRORSINKNOTREGISTERED

The exact condition behind the dialog

0xC00D108C maps to NS_E_WMPCORE_ERRORSINKNOTREGISTERED. Its actionable interpretation is the calling object has no registered sink for asynchronous WMP errors within the Windows Media Player ActiveX control and COM object lifetime; the producing mechanism is the embedded-control layer that activates the Player, optionally remotes it to full mode, marshals event interfaces between COM apartments and exposes error state to the host.

An additional test is to record sink registration, object instance and subscription lifetime; that evidence is more useful than reinstalling the Player or changing several unrelated settings at once.

How this layer works

The playback core error sink not registered workflow must be separated from a generic WMP failure: a local ActiveX control, a remoted control and the full-mode Player can share playback services while still having different window, docking and lifetime states. It also matters that cross-apartment callbacks require valid marshaled interfaces; a working playback engine does not prove that the host still owns a usable event or error interface.

Representative case for playback core error sink not registered: Playback begins on a new core object while the sink remains attached to the previous one.

Evidence to capture before retry

FieldWhat to record
What to verifyRecord sink registration, object instance and subscription lifetime
Artifact identityShutdown order for host window, control, playback engine and plug-ins for this reproduction
Runtime stateHost process and control version, uiMode and remote/local service type for this reproduction
Owning objectCOM apartment type and thread that created the control for this reproduction
Lower-level resultIWMPRemoteMediaServices result and isRemote/docked state for this reproduction
CorrelationGIT cookie or marshaled event-interface generation for this reproduction

Why the symbolic name matters

ResultDifferent condition
NS_E_WMPCORE_ERRORMANAGERNOTAVAILABLEThe playback core has no internal error-manager service available for the requesting object
NS_E_WMPCORE_FAILEDTOGETMARSHALLEDEVENTHANDLERINTERFACEThe core could not retrieve a usable event-handler interface for the calling COM apartment
NS_E_WMPCORE_COCREATEFAILEDFORGITOBJECTCOM could not create the process-wide Global Interface Table object used for cross-apartment access

A focused diagnostic sequence

  1. Use this deciding observation for this condition: record sink registration, object instance and subscription lifetime.
  2. Apply the smallest supported remedy for this condition: register the sink before starting asynchronous playback or playlist work.

Correct the producing condition

The targeted correction for this condition is to register the sink before starting asynchronous playback or playlist work. Keep the original failing input until the same operation succeeds after one controlled change.

  • Avoid reusing an interface pointer directly on another COM apartment; it can destroy the artifact or state needed to explain this result.
  • Avoid destroying the host window before recording control state and the first callback failure; that can replace the original HRESULT with a secondary failure from another layer.

Regression check

Technical references


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