| Previous | Next |
| NS_E_HDS_KEY_MISMATCH | NS_E_DRM_MIGRATION_OBJECT_IN_USE |
NS_E_DRM_MIGRATION_OPERATION_CANCELLED
Meaning beyond the player message
The symbolic result NS_E_DRM_MIGRATION_OPERATION_CANCELLED narrows 0xC00D279A to license and secure-state migration. In practical terms, the migration workflow was canceled before completion; the producing layer is the controlled import/export path that packages legacy DRM state, validates the migration image and source identity, and commits eligible licenses to a supported target environment.
Record cancellation owner, stage and whether target state was modified.
Which component owns the failure
Do not flatten this result into a generic DRM error. Migration is not equivalent to copying license-store files: the importer validates source state, target support and protected identities. The second relevant rule is that a migration image, target-state corruption and an already imported license are independent outcomes and should not be collapsed into one generic restore failure.
How to prove the condition
- Prove the boundary by ensuring you can record cancellation owner, stage and whether target state was modified.
- After you clean up or resume according to the supported operation state before retry, verify both the requested right and the final store/device state.
Diagnostic inputs that separate the causes
- Protected identity: per-license duplicate or import result.
- Operation state: source and target OS versions and user SIDs.
- Persistence or transport: migration image identity, hash and creation time.
- Security context: legacy V2 secure-store entry and supplied password.
- Correlation point: importer plug-in availability and current operation state.
Do not merge these HRESULTs
| Result | Different condition |
|---|---|
NS_E_DRM_MIGRATION_OBJECT_IN_USE | The migration object already owns an active operation. |
NS_E_DRM_UNABLE_TO_CREATE_MIGRATION_IMPORTER_OBJECT | The DRM runtime cannot create the migration-importer object required for this operation. |
NS_E_DRM_MIGRATION_NOT_SUPPORTED | The selected importer plug-in does not support this migration format or operation. |
What a supported fix should change
Resolve the underlying condition directly: clean up or resume according to the supported operation state before retry. A player reinstall, reboot or new license request is useful only when it changes the condition “migration operation cancelled” and can be verified against the original evidence.
Representative case: The user cancels after image validation but before all licenses are imported.
Common but unsafe responses
- Avoid editing migration images or combining data from different source machines.
- Avoid running concurrent playback or DRM operations against the source while migration owns it.
How to know the fix is real
Repeat the operation that originally returned it. Assert the exact HRESULT at the producing API in the failing “migration operation cancelled” fixture; then change only the relevant precondition and confirm that the corrected run completes without substituting a neighboring DRM result. After correcting it, verify the requested action and the final license-store, secure-clock, device or migration state relevant to “migration operation cancelled”.
Code-specific operational note
The user-facing message “Migration was cancelled by the user.” describes the visible condition but does not identify the producing API, object instance, or protected identity by itself.
Technical references
Looking for a different code? Search another status or error code.