| Previous | Next |
| NS_E_NAMESPACE_DUPLICATE_CALLBACK | NS_E_NAMESPACE_NAME_TOO_LONG |
NS_E_NAMESPACE_CALLBACK_NOT_FOUND
Mechanism and scope
This result (0xC00D1391) marks an unregister operation names a callback that is not attached to the node. The code identifies a narrow server contract, so diagnosis should preserve the object instance and the first native return.
Windows Media Services persists server configuration as a typed hierarchy; nodes have names, value types, security classifications and persistence rules; callbacks are attached to particular nodes rather than to arbitrary strings. In the trace, when configuration was imported or replicated, compare ServerNamespace.xml, NameSpaceDelta.xml and plug-in registrations, but do not edit those files while WMServer is running.
Test the owning precondition
- Capture
0xC00D1391, this result, the exact API/administrative action and the first failure timestamp. - Preserve node path, callback identity, earlier registration result, plug-in generation and shutdown order.
- Perform one isolated experiment: pair registration and removal in the same object instance and ignore removal only when absence is an explicitly valid state.
Code-specific failure anatomy
A representative occurrence is when an unregister operation names a callback that is not attached to the node. Capture node path, callback identity, earlier registration result, plug-in generation and shutdown order together with the object instance and the exact administrative or protocol request.
For a useful negative control, pair registration and removal in the same object instance and ignore removal only when absence is an explicitly valid state.
The tempting but misleading response is registering a new callback merely to make removal succeed; that hides the ownership bug. That action does not test the distinction that matters here: node not found concerns the configuration node itself, while it concerns an observer missing from an existing node.
Evidence that separates this code
| Controlled comparison | Use a known-good object of the same type and vary only the precondition described as “an unregister operation names a callback that is not attached to the node”. |
Changes that do not establish the cause
- registering a new callback merely to make removal succeed; that hides the ownership bug.
- Avoid changing the publishing point, protocol, content and plug-in set in one test; such a test cannot show which precondition cleared the code.
Related codes are different
Primary distinction: node not found concerns the configuration node itself, while it concerns an observer missing from an existing node.
| Nearby result | Different condition |
|---|---|
NS_E_NAMESPACE_NAME_TOO_LONG | a node name exceeds the namespace component length accepted by the server. |
NS_E_NAMESPACE_DUPLICATE_CALLBACK | the same callback identity is being registered twice on one node. |
NS_E_NAMESPACE_DUPLICATE_NAME | a sibling node with the requested name already exists. |
Technical references
Looking for a different code? Search another status or error code.
