Win32 apps in Intune
Win32 apps give you full control over installation, but they also give you every opportunity to misconfigure a deployment. These are the parts that matter.
Packaging
Use the Microsoft Win32 Content Prep Tool to wrap the installer as an .intunewin
file. The folder you point it at becomes the working directory at install time, so keep the
installer and any supporting files together and reference them with relative paths.
Install and uninstall commands
Commands run in the context you choose. Interactive installers must run silently in the system context, so prefer documented silent switches. Common examples:
msiexec /i "App.msi" /qn setup.exe /S powershell.exe -ExecutionPolicy Bypass -File .\install.ps1
The uninstall command should remove the same footprint the detection rule looks for, otherwise the app can reappear after removal.
Return codes
Intune interprets the exit code. 0 is success, 3010 is a soft
reboot, and 1641 is a hard reboot. Anything else is treated as a failure and
appears as an install error. Add explicit mappings for installers that use non-standard
success codes.
Requirements and detection
Requirements gate whether the app installs at all; detection decides whether it is already present. Keep them aligned: a requirement that passes while detection fails causes repeated install attempts.