| Previous | Next |
| NS_E_DRM_STORE_NOTALLOWED | NS_E_DRM_LICENSE_CERT_EXPIRED |
NS_E_DRM_LICENSE_APP_NOTALLOWED
What failed in WMDRM
0xC00D27DD maps to NS_E_DRM_LICENSE_APP_NOTALLOWED. Read it as a result from license validity, rights and policy enforcement: the license does not permit use by the current player application. Keeping the “license app notallowed” boundary intact prevents a later playback message from hiding the original DRM failure.
Record application certificate/identity and license application restriction.
Place in the DRM workflow
The workflow around this result matters: possessing a license does not imply that every operation is permitted; rights and restrictions are evaluated for the requested action. In addition, the same content can have several licenses, so diagnostics must identify the license actually selected by the DRM component.
State to capture before retry
- Code-specific proof: record application certificate/identity and license application restriction.
- Protected identity: requested action such as play, copy, burn or transfer.
- Operation state: license ID, KID and content-header identity.
- Persistence or transport: valid-from, expiration and secure-clock values.
- Security context: application security level and required output protection.
- Correlation point: remaining counts, device registration and revocation state.
A useful investigation order
- Locate the earliest API return, callback or event containing this result and
0xC00D27DD. - Identify the exact content, license, store, device or migration object instance involved in “license app notallowed”.
- Determine whether “license app notallowed” occurred before network exchange, during response validation, while enforcing policy, or while committing protected state.
- Perform the code-specific check: record application certificate/identity and license application restriction.
- Make one targeted change — use an authorized compatible application or obtain a suitable license — and repeat the same producing operation.
Targeted fix
To correct this, use an authorized compatible application or obtain a suitable license.
Representative case: A store-issued license is bound to a different approved player.
What not to do first
- Avoid changing the system clock or bypassing output protection to make a time- or security-bound license appear valid.
- Avoid treating every policy denial as damaged media or a missing codec.
- Do not reduce this result to “DRM failed” in telemetry; retain the HRESULT, symbolic name, operation and object identity.
Nearby results with different meanings
| Result | Different condition |
|---|---|
NS_E_DRM_STORE_NOTALLOWED | Current machine or policy state does not permit this license to be stored. |
NS_E_DRM_STORE_NEEDINDI | The license cannot be stored until the DRM client is individualized to the required level. |
NS_E_DRM_LICENSE_APPSECLOW | The player application security level is below the license requirement. |
Verification after correction
After the repair, recreate the WMDRM object and run the smallest reproducer. Confirm that 0xC00D27DD no longer occurs, that the intended license action completes, and that no store, certificate, clock or migration warning replaces it.
Code-specific operational note
The user-facing message “The license for this file requires an upgraded version of your player or a different player.” describes the visible condition but does not identify the producing API, object instance, or protected identity by itself.
Technical references
- DRM basics and rights enforcement.
- Licenses and the local license store — platform documentation used to distinguish this result from adjacent results.
- Output protection levels.
- DRM protection and license distribution
Looking for a different code? Search another status or error code.