Deploying MATLAB in enterprise environments can be challenging due to its size, licensing model, and long installation times. This guide outlines a structured and reliable approach to deploying MATLAB R2025b using Microsoft Intune Win32 apps, suitable for managed Windows devices in education and corporate environments. This document provides deployment guide for only two products: MATLAB and SIMULINK. You can include other products as required provided that it is defined in the property file. This guide can be taken as reference for installing any version R20XXy.
The implementation uses MathWorks’ offline installer and integrates cleanly with Intune’s install, detection, and uninstall processes.
⚠️ This post focuses on the deployment approach and operational considerations.
The full scripts are available via the linked GitHub repository.
Deployment Approach
The MATLAB deployment follows standard Intune Win32 best practices:
- Offline MATLAB installer packaged as a Win32 app
- Silent installation using an installer input file
- Intune-managed install, detect, and uninstall scripts
All install logic runs from the Intune content cache using $PSScriptRoot, ensuring compatibility with SYSTEM context execution.
Prerequisites
Before deploying MATLAB via Intune, ensure the following:
- MATLAB offline installer files downloaded from MathWorks account
- A valid installer_input.txt configured for silent install
- License Key
- Sufficient disk space
installer_input.txt contains as per the following(minimum).destinationFolder=C:\MATLAB\R2025b
fileInstallationKey= <PUT YOUR FIK KEY HERE>
agreeToLicense=yes
outputFile=C:\TEMP\matlab_install.log
improveMATLAB=no
setFileAssoc=true
desktopShortcut=true
startMenuShortcut=true
createAccelTask=true
product.MATLAB
product.Simulink
product.MATLAB – MATLAB
product.Simulink – SIMULINK
Please refer to your product license for lists of products included and scope it as per your requirement in the property file. Please remember the more product you include, the more time it takes to install and require more size.
Installation Flow
At a high level, the installation process is:
- Intune stages the MATLAB installer content locally
- The install script launches setup.exe silently using the input file
- The installer writes a completion status to a local log file
- The script exits with a success or failure code for Intune reporting
Detection Strategy
Application detection is designed to be both reliable and safe:
- First, the presence of the MATLAB executable is validated
- Then, the install log is checked for a successful completion marker
- Detection waits (with timeout protection) to accommodate long installs
This prevents false positives and avoids Intune reinstall loops caused by premature detection.
Uninstall Process
Uninstallation is handled using the MathWorks Product Uninstaller in silent mode. If MATLAB is already removed, the uninstall script exits successfully to prevent repeated retry attempts.
Logging and Troubleshooting
A local install log is written to:
C:\TEMP\matlab_install.log
This log is useful for:
- Post-deployment validation
- Troubleshooting failed installs
- Supporting Intune detection logic
For Intune-side troubleshooting, standard IME and agent logs should also be reviewed.
GitHub Repository
All scripts used for this deployment (install, detect, uninstall) are maintained in my GitHub repository.
➡️ GitHub link:
- Install Command:
powershell.exe -ExecutionPolicy Bypass -NoProfile -WindowStyle Hidden -File Install-MATLAB.ps1 - Uninstall Command:
powershell.exe -ExecutionPolicy Bypass -NoProfile -WindowStyle Hidden -File Uninstall-MATLAB.ps1 - Detection Rule: Use detection script.
This deployment model has been tested with long-running installs and works reliably in managed environment. If you manage large-scale application deployments with Intune, this approach provides a clean, supportable way to deliver MATLAB without manual intervention.