| Previous | Next |
| NS_E_WMPOCX_NO_REMOTE_WINDOW | NS_E_PLUGIN_NOTSHUTDOWN |
NS_E_WMPOCX_ERRORMANAGERNOTAVAILABLE
The exact condition behind the dialog
Windows Media Player reports NS_E_WMPOCX_ERRORMANAGERNOTAVAILABLE (0xC00D0FD5) when the embedded ActiveX control cannot expose its automation error manager to the host. The ActiveX control error manager not available condition is owned by 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 control activation/site state, the error property access and whether the OCX is already detaching; that evidence is more useful than reinstalling the Player or changing several unrelated settings at once.
Investigation order
- Preserve
0xC00D0FD5, the ErrorItem context and the object generation involved in ActiveX control error manager not available. - Compare the failing artifact with a known-good artifact that differs only in the suspected property.
- Separate acquisition, parsing, object construction, playback and persistence until the component that produced the failure is clear.
- Confirm the failure directly: record control activation/site state, the error property access and whether the OCX is already detaching.
- After you reactivate or recreate the OCX generation before reading its Error collection, recreate the owning WMP object and verify that the corrected generation completes.
The surrounding WMP state
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. A second relevant constraint is 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: Host script queries Player. Error after the ActiveX control has been deactivated from its site. The example isolates only the producing component.
Inputs that distinguish the causes
Preserve the first occurrence before retry or fallback changes the evidence. Capture one consistent object generation:
| Field | What to record |
|---|---|
| Decisive check | Record control activation/site state, the error property access and whether the OCX is already detaching |
| Artifact identity | Shutdown order for host window, control, playback engine and plug-ins for this reproduction |
| Runtime state | Host process and control version, uiMode and remote/local service type for this reproduction |
| Owning object | COM apartment type and thread that created the control for this reproduction |
| Lower-level result | IWMPRemoteMediaServices result and isRemote/docked state for this reproduction |
| Correlation | GIT cookie or marshaled event-interface generation for this reproduction |
Log paths, hashes, IDs, offsets, and HRESULTs. Exclude secrets and unrelated content from logs.
Do not confuse it with nearby results
| Result | Different boundary |
|---|---|
NS_E_PLUGIN_NOTSHUTDOWN | A Windows Media Player plug-in did not finish its shutdown contract |
NS_E_WMPOCX_NOT_RUNNING_REMOTELY | A remote-only operation was requested while the control is running in local mode |
NS_E_WMPOCX_NO_ACTIVE_CORE | The ActiveX method/property was called before a usable Player core was activated |
If this result is followed by a broader “cannot play,” “cannot load,” or “operation failed” result, preserve the earlier event. A later wrapper error may be secondary.
Verification after correction
Keep one fixture that reproduces 0xC00D0FD5 and one corrected fixture that changes only the identified precondition. This condition correction is complete when the intended operation succeeds without being replaced by a neighboring WMP HRESULT.
What a real fix must change
Change the responsible precondition rather than masking the symptom: reactivate or recreate the OCX generation before reading its Error collection. A retry is meaningful only after that recorded condition changes.
- 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.
Code-specific operational note
Use this result, 0xC00D0FD5 and the symbolic phrase in traces. Correlate search keys with API and object.
Technical references
- Player control guide — API or format context for this HRESULT.
- Remoting the Windows Media Player control — documentation used to identify the producing boundary of this result.
- Using skins with the control — normative or platform material relevant to this result.
- IGlobalInterfaceTable interface
Looking for a different code? Search another status or error code.
