| Previous | Next |
| NS_E_DRM_MIGRATION_INVALID_LEGACYV2_SST_PASSWORD | NS_E_DRM_UNABLE_TO_CREATE_MIGRATION_IMPORTER_OBJECT |
NS_E_DRM_MIGRATION_NOT_SUPPORTED
How to classify this result
The symbolic result NS_E_DRM_MIGRATION_NOT_SUPPORTED narrows 0xC00D2794 to license and secure-state migration, in a migration not supported incident. In practical terms, the selected importer plug-in does not support this migration format or operation; 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, for this migration not supported result.
For NS_E_DRM_MIGRATION_NOT_SUPPORTED, the built-in message summarizes the user-visible outcome, while the symbolic phrase “migration not supported” preserves the exact WMDRM boundary for diagnosis. For this code, the proof step is to record plug-in identity, source format and requested direction, when reproducing migration not supported.
How to prove the condition
- Locate the earliest API return, callback or event containing
NS_E_DRM_MIGRATION_NOT_SUPPORTEDand0xC00D2794. - For
NS_E_DRM_MIGRATION_NOT_SUPPORTED, identify the exact content, license, store, device or migration object generation involved in “migration not supported”. - For
NS_E_DRM_MIGRATION_NOT_SUPPORTED, determine whether “migration not supported” occurred before network exchange, during response validation, while enforcing policy, or while committing protected state. - Perform the code-specific check: record plug-in identity, source format and requested direction, within the migration not supported workflow.
- Make one narrow correction — use a compatible supported migration path — and repeat the same producing operation, in the migration not supported path.
Which component owns the failure
Do not flatten NS_E_DRM_MIGRATION_NOT_SUPPORTED into a generic DRM error, while tracing migration not supported. Migration is not equivalent to copying license-store files: the importer validates source state, target support and protected identities, for the migration not supported boundary. 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, during migration not supported diagnosis.
Diagnostic inputs that separate the causes
Capture the first NS_E_DRM_MIGRATION_NOT_SUPPORTED occurrence before automatic retry, player teardown, store repair or license reacquisition changes the state, in a migration not supported incident. The smallest useful record contains:
- Code-specific proof: record plug-in identity, source format and requested direction, for this migration not supported result.
- Protected identity: per-license duplicate or import result, when reproducing migration not supported.
- Operation state: source and target OS versions and user SIDs, within the migration not supported workflow.
- Persistence or transport: migration image identity, hash and creation time, in the migration not supported path.
- Security context: legacy V2 secure-store entry and supplied password, while tracing migration not supported.
- Correlation point: importer plug-in availability and current operation state, for the migration not supported boundary.
For the “migration not supported” investigation, use KIDs, license IDs, hashes, certificate thumbprints, sizes and timestamps where possible. While diagnosing NS_E_DRM_MIGRATION_NOT_SUPPORTED, do not place content keys, complete license blobs, passwords, cookies or decrypted media in ordinary logs, during migration not supported diagnosis.
Common but unsafe responses
- Avoid editing migration images or combining data from different source machines, in a migration not supported incident. That changes evidence without demonstrating why
NS_E_DRM_MIGRATION_NOT_SUPPORTEDwas produced. - Avoid running concurrent playback or DRM operations against the source while migration owns it, for this migration not supported result. For
NS_E_DRM_MIGRATION_NOT_SUPPORTED, that shortcut can create a second store, identity or policy problem, when reproducing migration not supported. - Do not reduce
NS_E_DRM_MIGRATION_NOT_SUPPORTEDto “DRM failed” in telemetry; retain the HRESULT, symbolic name, operation and object identity, within the migration not supported workflow.
What a supported fix should change
For NS_E_DRM_MIGRATION_NOT_SUPPORTED, the corrective direction is to use a compatible supported migration path, in the migration not supported path. Preserve the original content/header, store or migration material for NS_E_DRM_MIGRATION_NOT_SUPPORTED until the “migration not supported” operation succeeds and survives a fresh application object or required restart.
Representative case: A plug-in capable of reading one legacy version is asked to import another, while tracing migration not supported.
Do not merge these HRESULTs
| Result | Different boundary |
|---|---|
NS_E_DRM_MIGRATION_INVALID_LEGACYV2_SST_PASSWORD | The password for the legacy v2 secure-store entry is incorrect, for the migration not supported boundary. |
NS_E_DRM_UNABLE_TO_CREATE_MIGRATION_IMPORTER_OBJECT | The DRM runtime cannot create the migration-importer object required for this operation, during migration not supported diagnosis. |
NS_E_DRM_MIGRATION_LICENSE_ALREADY_EXISTS | The target already contains the license being imported, in a migration not supported incident. |
Several values can accompany the “migration not supported” condition in one incident. Order the NS_E_DRM_MIGRATION_NOT_SUPPORTED event chain by timestamp and prefer the first code produced at the lowest specific boundary over a later player-level summary, for this migration not supported result.
How to know the fix is real
After the repair, recreate the WMDRM object and run the smallest reproducer for NS_E_DRM_MIGRATION_NOT_SUPPORTED. Confirm that 0xC00D2794 no longer occurs, that the intended license action completes, and that no store, certificate, clock or migration warning replaces it, when reproducing migration not supported.
Code-specific operational note
The symbolic phrase “migration not supported” is the important search and telemetry key for NS_E_DRM_MIGRATION_NOT_SUPPORTED. Keep it beside the exact value 0xC00D2794; the official message “Migration is not supported by the plugin” is useful to users, but it does not identify the producing API, object generation or protected identity on its own, within the migration not supported workflow.
Technical references
- Backing up and restoring DRM licenses — API and state rules relevant to this
NS_E_DRM_MIGRATION_NOT_SUPPORTEDboundary. - Obtaining the required DRM library — platform documentation used to distinguish
NS_E_DRM_MIGRATION_NOT_SUPPORTEDfrom adjacent results. - DRM client programming guide — official Windows Media DRM context for
NS_E_DRM_MIGRATION_NOT_SUPPORTED. - Windows Media DRM error codes — API and state rules relevant to this
NS_E_DRM_MIGRATION_NOT_SUPPORTEDboundary.
Looking for a different code? Search another status or error code.