| Previous | Next |
| SL_E_INVALID_RUNNING_MODE | SL_E_CIDIID_INVALID_DATA |
SL_E_SLP_NOT_SIGNED
The stage that stopped
SL_E_SLP_NOT_SIGNED is HRESULT 0xC004F02A. It belongs to the local Software Protection Platform. Its narrow boundary is: the license or SLP artifact is expected to be signed but no acceptable signature is present.
A local licensing operation can fail while loading a package, verifying a signature, resolving policy, authorizing a right, registering an event or changing service state. Each boundary is narrower than the final activation status shown in Settings. The code is not interchangeable with a signed artifact whose signature verification fails.
Windows reports “The Software Licensing Service reported that the license is invalid”.
Evidence that avoids a false diagnosis
| signer, signature result, file hashes and servicing history | Can caller identity and elevation be captured before changing state? |
| Code-specific distinction | Does the evidence support “replace it with the OEM/Microsoft-signed artifact through supported servicing” rather than a signed artifact whose signature verification fails? |
Diagnostic sequence
- Record
0xC004F02A, UTC time, caller and the first method or server request that returned it. - Capture first API/slmgr method and earliest Security-SPP event.
- Before remediation, confirm that the failure is not instead the neighboring condition: a signed artifact whose signature verification fails.
REM Evidence context: SL_E_SLP_NOT_SIGNED
cscript %windir%\system32\slmgr.vbs /dlv
powershell -NoProfile -Command "Get-CimInstance SoftwareLicensingProduct | Where-Object PartialProductKey | Select Name,ApplicationID,ID,LicenseStatus,LicenseStatusReason,PartialProductKey"
Important distinctions
| Result | Different condition |
|---|---|
SL_E_INVALID_RUNNING_MODE | the Software Protection service is being started or used in an OS mode that does not support this operation |
SL_E_POLICY_CACHE_INVALID | the compiled or cached licensing policy cannot be trusted or parsed |
SL_E_TAMPER_DETECTED | the local licensing platform detects modification of protected license state or components |
A focused reproduction for this exact result
| Control | Design |
|---|---|
| Failing fixture | An unsigned custom license is introduced into an SLP workflow. |
| Single variable | Change only original signed artifact and its matching signature chain. |
| Positive control | The unmodified Microsoft/OEM-signed artifact verifies on the same serviced build. |
| Different result | If the experiment instead proves “the Software Protection service is being started or used in an OS mode that does not support this operation”, diagnose that condition separately rather than treating it as this HRESULT. |
Fix the prerequisite, then verify
To correct this using supported mechanisms, replace it with the OEM/Microsoft-signed artifact through supported servicing.
Technical references
Looking for a different code? Search another status or error code.