When a Win32 application deployment fails in Microsoft Intune, the device usually does not retry immediately. This behavior is caused by Intune’s Global Re-evaluation Schedule (GRS), which often delays the next retry for up to 24 hours.
This PowerShell script is designed to force an immediate retry by clearing the local Intune Management Extension (IME) state related to a specific Win32 app and restarting the IME service.
Important note: This script does NOT uninstall applications. It only resets Intune’s local installation state so Intune can re-evaluate the app right away.
- A Win32 app fails to install
- Intune marks the app as failed
- GRS prevents another install attempt for around 24 hours
- Waiting blocks testing, troubleshooting, or urgent deployments
This script removes the local “wait” state so Intune can try again immediately.
The script follows four steps:
-
Search Finds registry entries related to the target Win32 app using its AppId (unique application identifier).
-
Match Extracts the related GRS Hash from IME log files to accurately identify retry-related registry keys.
-
Delete Removes only the Intune Management Extension registry state associated with that AppId and GRS Hash.
-
Restart Restarts the IntuneManagementExtension service to force immediate re-evaluation.
- It does not uninstall the application
- It does not delete application files
- It does not run uninstall commands
The installed application itself is not touched.
- A Win32 app installation failed and you want to retry immediately
- You are troubleshooting Win32 app deployments
- You want to avoid waiting for the next Intune or GRS cycle
- You are testing install logic, detection rules, or dependencies
- Go to Intune → Apps → Apps
- Click on the target Win32 application
- Look at the browser URL
- Copy the value after /appId/
Example:
https://intune.microsoft.com/#view/Microsoft_Intune_Apps/SettingsMenu/~/0/appId/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
That GUID value is the AppId used in the script.

- Run as Administrator or SYSTEM
- 64-bit PowerShell recommended
- Intune Management Extension must be installed on the device
Always run with -WhatIf first:
.\Invoke-IntuneWin32RetryReset.ps1 -WhatIfThis shows what would be deleted without making any changes.
If the preview looks correct, run without -WhatIf:
.\Invoke-IntuneWin32RetryReset.ps1The script will remove IME registry state for the specified AppId and restart the Intune Management Extension service.
A log file is created automatically:
C:\ProgramData\IME-DeepReset-<AppId>.log
Use this log file for troubleshooting and verification.
- Make sure the AppId value is correct
- Always test on a non-production device first
- Use -WhatIf before making changes
- This script performs deep registry operations under:
HKLM\SOFTWARE\Microsoft\IntuneManagementExtension
A Win32 app fails due to a temporary network issue. Intune schedules the next retry for the next day.
Instead of waiting:
- Find the AppId in Intune
- Run the script with -WhatIf
- Confirm the targets
- Run the script normally
Within minutes, Intune retries the installation.
- Problem: Intune delays Win32 app retries due to GRS
- Solution: Reset local IME state using PowerShell
- Key identifiers: AppId and GRS Hash
- Result: Immediate re-evaluation and retry
- Safe usage: Always use -WhatIf first
This script is provided as-is. Use at your own risk and always test before production use.