Easy Identify failed apps during an Autopilot installation (Error 0x81036502 & 0x87D1041C)
When you start an autopilot installation for a device the ESP (Enrollment Status Page) just shows you how many apps are being installed. When an app fails to install it can be sometimes hard to identify the failing app. So here a quick guide on how to Identify failed apps during an Autopilot installation. There are more solutions available on the internet but this is my favorite and way to go to troubleshoot this. In my experience, 80% of the cases when an autopilot failure occurs it is most likely because an app would not install correctly. So i hope this can shed some light on which apps are failing.
With these steps you can easily identify what app is causing the failure of the Autopilot progress.
Press Shift+F10 to open the cmd prompt. Open regedit. Navigate to:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Autopilot\EnrollmentStatusTracking\ESPTrackingInfo\Diagnostics\Sidecar
You will see a list of applications, starting with Win32App. These are the Win32 apps that have been installed or attempted to install as part of the Autopilot process. If you go into each one, the possible InstallationState options are shown below.
1 (NotInstalled)
2 (InProgress)
3 (Completed)
4 (Error)
Here you’ll see all win32 apps being deployed. We only deploy win32 apps but you may have some other registry locations with apps in. You’ll find them in this general area anyway. Look for a registry value of 4. The apps with a value of 1 are successfully installed. The app with the 4 value which has a failed installation is likely what caused the issue. Make a note of the app ID string.
Use the app ID string to go to the app in Intune: https://intune.microsoft.com/#view/Microsoft_Intune_Apps/SettingsMenu/~/0/appId/ The app id you have noted down from the registry.
That’s one way for you to find the app causing issues. You can further troubleshoot it or exclude it and you’ll find ESP works fine.
You can also run some diagnostics by running this script created by Michael Niehaus
Set-ExecutionPolicy Bypass
Install-script Get-AutopilotDiagnostics
Get-AutopilotDiagnostics.ps1 -online
This script can be run during Oobe by pressing shift + F10 (particularly if there is a failure), or once the device has completed the build and has rebooted. It analyses the Autopilot logs to determine outcomes. One additional benefit of this script is that it automatically translates the application names, rather than using the application GUIDs, which is very helpful. From the output of this script you can check how the Domain join, Policies or Application installs are progressing.
Some screenshots of the output:
And as always if you feel there is something in error or you want to add some stuff from your own experience don’t hesitate to contact me!















Great article! Thanks for the help.
You have the APP ID but how do you tell which app it is?
add the app id after this url: https://intune.microsoft.com/#view/Microsoft_Intune_Apps/SettingsMenu/~/0/appId/
This will take you to the intune console straight to the app with errors.
This is great! Appreciate the write up
Thank you! That is why i’m doing this for.
You superstar! I’ve been trying to navigate the MDMDiagReport. It made me want to give up with IT entirely! This, is simple and the app it’s pointing at is now surprise as it’s known to be a pain in the arse!
Hi Phil, love to hear that my article helped you out! Thank you.
Thanks for the guide, I’m able to identify the apps and exclude the devices group from installation.
Is there anyway to restart the autopilot without reset or wipe the whole laptop ?
Hi Wayne, if you use preprovisioning the answer is no. If you set in your esp block device until all apps and profiles are installed to no you can continue if autopilot fails.
Hi, Thank you for this article, I’m new to diagnosing autopilot and this guide has been very helpful.
One question i have, after running a get-autopilotdiagnostics I see in the observed timeline:
2 of our apps have a status entry for Downloading/Installing, then further down the same app ID is reporting success/installed which is great.
But our other 5 apps don’t report the Downloading/Installing status, they just say Success/Installed.
Do you know why some apps have an entry for Downloading/Installing but not all… oddly the 2 that report Downloading/Installing seem to take the longest to install.
TIA
Hi Steven, most likely is that there status is not yet reported back to the device from Intune. Should be solved when everything is on declarative and mmpc.
after knowing the app how can I restart the app installation during esp as I have setup the ESP as inescapable now this article helped me find out the app name bit still unsure how to escape this error coz the same app is working fine on other device?
what all options do I have after getting this error in mandatory esp setup?
If you use pre provisioning you cannot restart the process. You need to wipe and start over. If you dont use pre provisioning you can set the block device setting in your esp settings to no. A continue anyway button will show during deployment.
Great tips in this post! I particularly found the advice on customizing settings to fit my workflow incredibly helpful. Can’t wait to implement these suggestions and boost my productivity!
Great tips! I’m excited to implement these autopilot strategies to improve my workflow. Can’t wait to see the results!
Thank you!
Hi,
Thank you for the great article. MS New Teams can be hit or miss at the ESP so I exclude from the block device list. I never had any issues with Office installing but with a WIN 11 reset it is not installing and causing a failure. Do you know what the status Not processed / 997 could mean?
Great tips! I especially found the sections on customizing settings and utilizing keyboard shortcuts helpful. Can’t wait to implement these strategies and see how they enhance my workflow! Thanks for sharing!
Thank you Sir!
It look like script fails now on windows 11 24h2
on device esp like it cant read something, so the win32 app are not shown as in this pic, could you update the script?
it is not my script unfortunately.