| Previous | Next |
| SL_E_POLICY_CACHE_INVALID | SL_E_SLP_NOT_SIGNED |
SL_E_INVALID_RUNNING_MODE
The exact failure point
HRESULT 0xC004F029 is exposed as SL_E_INVALID_RUNNING_MODE by the local Software Protection Platform. The code says more than the friendly message: the Software Protection service is being started or used in an OS mode that does not support this operation.
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 the service stopping or already running in a supported mode.
Windows reports “The Software Licensing Service cannot be started in the current OS mode”.
Inputs worth preserving
| sppsvc state, boot session and concurrent maintenance | Can caller identity and elevation be captured before changing state? |
| Code-specific distinction | Does the evidence support “record Safe Mode/WinPE/audit setup context and perform the operation in normal supported Windows” rather than the service stopping or already running in a supported mode? |
Triage without destroying evidence
- Before remediation, confirm that the failure is not instead the neighboring condition: the service stopping or already running in a supported mode.
- Record
0xC004F029, UTC time, caller and the first method or server request that returned it.
REM Evidence context: SL_E_INVALID_RUNNING_MODE
cscript %windir%\system32\slmgr.vbs /dlv
powershell -NoProfile -Command "Get-CimInstance SoftwareLicensingProduct | Where-Object PartialProductKey | Select Name,ApplicationID,ID,LicenseStatus,LicenseStatusReason,PartialProductKey"
Results that require different fixes
| Result | Different condition |
|---|---|
SL_E_POLICY_CACHE_INVALID | the compiled or cached licensing policy cannot be trusted or parsed |
SL_E_SLP_NOT_SIGNED | the license or SLP artifact is expected to be signed but no acceptable signature is present |
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 | Activation tooling is run from an unsupported recovery or setup phase. |
| Single variable | Change only sppsvc lifecycle state at the instant of the operation. |
| Positive control | The operation runs in its required stable service state without force termination. |
| Different result | If the experiment instead proves “the compiled or cached licensing policy cannot be trusted or parsed”, diagnose that condition separately rather than treating it as this HRESULT. |
Supported correction and proof
To correct this using supported mechanisms, record Safe Mode/WinPE/audit setup context and perform the operation in normal supported Windows.
Technical references
Looking for a different code? Search another status or error code.