Deploy MATLAB Using Microsoft Intune on Windows Devices

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:

  1. Intune stages the MATLAB installer content locally
  2. The install script launches setup.exe silently using the input file
  3. The installer writes a completion status to a local log file
  4. 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-MATLAB.ps1

Uninstall-MATLAB.ps1

Detect-MATLAB.ps1

  • 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.

Leave a Reply

Your email address will not be published. Required fields are marked *