| Previous | Next |
| NS_E_WMPOCX_ERRORMANAGERNOTAVAILABLE | NS_E_WMP_CANNOT_FIND_FOLDER |
NS_E_PLUGIN_NOTSHUTDOWN
What failed
NS_E_PLUGIN_NOTSHUTDOWN (0xC00D0FD6) means Windows Media Player did not close cleanly and identified an optional plug-in as a likely contributor. The Windows Media message notes that a damaged or incompatible plug-in can cause this condition and that optional plug-ins may be disabled as a precaution.
Evidence that identifies the plug-in
- Record the enabled plug-in list, CLSID, version, module path and signer before changing the configuration.
- Capture the Player process exit sequence: the last plug-in callback, outstanding worker threads, COM references and the time between the shutdown request and process termination.
- If a plug-in hosts background work, record whether it stops issuing callbacks and releases Player interfaces after shutdown begins.
- Keep the first HRESULT or exception produced during shutdown. A later “Player was not closed properly” dialog is a summary, not necessarily the first failure.
Focused isolation
- Start the Player with optional plug-ins disabled and reproduce the same open/play/close sequence.
- Re-enable suspect plug-ins one at a time, keeping the media item and Player configuration unchanged.
- For a developer-owned plug-in, trace entry and exit from its shutdown/teardown callbacks and verify that worker threads are joined and callbacks are canceled before final COM references are released.
- If a plug-in crosses COM apartments, marshal the interface correctly rather than reusing a raw interface pointer on another thread.
A clean run with the same media and one plug-in disabled is evidence against that plug-in's shutdown path; reinstalling the entire Player or changing codecs at the same time is not.
Related results
| Result | Different boundary |
|---|---|
NS_E_WMPOCX_ERRORMANAGERNOTAVAILABLE | The embedded Player control cannot expose its automation error manager. |
NS_E_WMPOCX_NOT_RUNNING_REMOTELY | A remote-only operation was requested while the control is running locally. |
NS_E_WMPOCX_NO_ACTIVE_CORE | The control was called before a usable Player core was active. |
Verification
After correcting or replacing the responsible plug-in, repeat the original sequence and confirm that the Player process exits normally, no plug-in callbacks arrive after teardown begins, and optional plug-ins are not disabled on the next start.
Technical references
- Player control guide
- Remoting the Windows Media Player control
- Using skins with the control
- IGlobalInterfaceTable interface
Looking for a different code? Search another status or error code.