| Previous | Next |
| SDIAG_E_TRUST | SDIAG_E_VERSION |
SDIAG_E_CANNOTRUN
SDIAG_E_CANNOTRUN — 0x803C0108
SDIAG_E_CANNOTRUN means the pack cannot execute on this system because its manifest requirements, context, dependencies, or platform applicability are not satisfied.
Meaning in the subsystem
A troubleshooting pack has distinct initialization, detection, resolution, and verification phases. Keep the ordinary result report together with the debug report, and identify whether the pack script, PowerShell host, managed host, resource loader, trust check, or verifier produced the first failure.
Version mismatch has a dedicated code; CANNOTRUN is the broader eligibility/execution gate.
Minimum useful evidence
- Pack manifest applicability rules, OS/build/architecture/SKU, and elevation requirement
- Required resources, services, features, and user interaction mode
- Get-TroubleshootingPack metadata and WTP debug report
- Interactive versus remote/unattended launch conditions
Isolate the responsible condition
- Query pack metadata before invocation.
- Run on a documented supported image with the same pack binary.
- Remove one optional dependency in a test pack to verify requirement reporting.
Avoid the common misdiagnosis
Read the comparison results in this order:
Regression proof
Apply the smallest change that addresses the first rejected condition: Correct the pack applicability manifest or run it only on supported configurations with required dependencies and context.
Close the incident only when preflight checks predict run eligibility accurately and unsupported systems receive a specific non-destructive explanation.
Technical references
The details above are grounded in the following Microsoft specifications and API documentation:
Looking for a different code? Search another status or error code.