Problem
In the Intune admin center, or on the Enrollment Status Page during Autopilot, a Win32 app shows as failed with 0x87D1041C. On the device, the app often looks installed. Because the app is marked failed, an ESP that blocks on required apps can stop device setup.
In C:\ProgramData\Microsoft\IntuneManagementExtension\Logs\IntuneManagementExtension.log (or AppWorkload.log on newer agents) you will typically see:
applicationDetected: False
... Installer Error code = 0x87D1041C
Cause
Intune decides whether an install worked by running the app's detection rule after the installer exits. 0x87D1041C means the installer reported success but the rule returned "not detected". Common reasons:
- The rule doesn't match what the installer writes. Wrong file path, registry key or value, or a version check that doesn't match the installed version.
- 32-bit vs 64-bit location. A 32-bit installer writes to
Program Files (x86)orHKLM\SOFTWARE\WOW6432Node. The rule's "Associated with a 32-bit app on 64-bit clients" setting must match. - Install context mismatch. The app installs per-user but the rule checks a machine location, or the other way round.
- The installer exits before it finishes. A bootstrapper launches a child process and returns 0 straight away, so detection runs too early.
- The app changed after install. It auto-updated, or a user removed it, so a version-specific rule no longer matches.
Fix
- Check what the installer really leaves behind. On a test device, install manually as SYSTEM (for example with
psexec -s) and note the exact file path, registry value or MSI product code and version. - Rebuild the detection rule to match. A file-exists rule on the main executable, or the MSI product code, is usually the most reliable. Avoid version checks unless you need them.
- Set the 32-bit flag correctly for file and registry rules.
- Make the install command wait. If the installer hands off to another process, use a wrapper script that waits for it to finish before exiting.
- Re-test on a reset device, or by uninstalling and syncing, then confirm
applicationDetected: Truein the log.
During Autopilot: if the app is in the ESP's blocking list, one detection failure can stop device setup. Fix the rule first. Don't remove the app from the ESP just to get past it.
PilotTrace example
PilotTrace flags this pattern automatically: it finds the failed app line, explains 0x87D1041C, and suggests fixing the detection rule. See it in the example report.
Check your own logs
Upload an Autopilot/MDM diagnostic CAB or ZIP, or just the IME logs, and PilotTrace will show the failing app and the evidence lines.
Analyze a diagnostic package