The maximum allowed file size (for a single file) in Intune is 8 GB. If you need to deliver bigger applications, simply reach out to Microsoft Intune support and request a higher limit. However in my ongoing project, the biggest application I was ever able to upload was a 15 GB SolidWorks package, even with an extended 30 GB limit. In this blog post I’m going to share a working workaround.
I’m using Amazon S3 as my CDN, but by default that has a single upload limitation of 5 GB. Luckily the Pro version of CloudBerry Explorer supports multipart upload. In this example I’m using MathWorks MATLAB with a separate license and silent installation file. It’s much faster updating those compared to making a new ZIP and uploading for each revision.
NOTE! This method does not support DO, read more in this great blog post Delivery Optimization Recommendations for Microsoft Intune.
Below is the PowerShell script.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# PowerShell Wrapper for MDT, Standalone and Chocolatey Installation - (C)2015 xenappblog.com # Example 1: Start-Process "XenDesktopServerSetup.exe" -ArgumentList $unattendedArgs -Wait -Passthru # Example 2 Powershell: Start-Process powershell.exe -ExecutionPolicy bypass -file $Destination # Example 3 EXE (Always use ' '): # $UnattendedArgs='/qn' # (Start-Process "$PackageName.$InstallerType" $UnattendedArgs -Wait -Passthru).ExitCode # Example 4 MSI (Always use " "): # $UnattendedArgs = "/i $PackageName.$InstallerType ALLUSERS=1 /qn /liewa $LogApp" # (Start-Process msiexec.exe -ArgumentList $UnattendedArgs -Wait -Passthru).ExitCode Clear-Host Write-Verbose "Setting Arguments" -Verbose $StartDTM = (Get-Date) $Vendor = "Mathworks" $Product = "MATLAB" $PackageName = "Setup" $Version = "2020b" $URLZip = "http://xxxx.s3.amazonaws.com/xxxx/MATLAB_R2020b.zip" $URLLic = "http://xxxx.s3.amazonaws.com/xxxx/MATLAB_R2020b.lic" $URLSilent = "http://xxxx.s3.amazonaws.com/xxxx/MATLAB_R2020b.txt" $ZIP = "$PackageName" + "." + "zip" $InstallerType = "exe" $Source = "$PackageName" + "." + "$InstallerType" $LogPS = "${env:SystemRoot}" + "\Temp\$Vendor $Product $Version PS Wrapper.log" $LogApp = "${env:SystemRoot}" + "\Temp\$PackageName.log" $Destination = "${env:ChocoRepository}" + "\$Vendor\$Product\$Version\$packageName.$installerType" $ProgressPreference = 'SilentlyContinue' $UnattendedArgs = '-inputFile .\Silent.txt' $TempFolder = "${env:SystemRoot}\Temp\$Product" Start-Transcript $LogPS | Out-Null If (!(Test-Path -Path $TempFolder)) { New-Item -ItemType directory -Path $TempFolder | Out-Null } CD $TempFolder Write-Verbose "Downloading $Vendor $Product $Version" -Verbose If (!(Test-Path -Path $ZIP)) { Invoke-WebRequest -UseBasicParsing -Uri $URLZip -OutFile $ZIP } Invoke-WebRequest -UseBasicParsing -Uri $URLLic -OutFile "C:\Windows\Temp\MATLAB_R2020b.lic" Invoke-WebRequest -UseBasicParsing -Uri $URLSilent -OutFile .\Silent.txt $EndDTM = (Get-Date) Write-Verbose "Elapsed Time: $([math]::Round( ($EndDTM-$StartDTM).TotalMinutes )) Minutes" -Verbose Write-Verbose "Extracting $Vendor $Product $Version" -Verbose $StartDTM = (Get-Date) Expand-Archive -Path $ZIP -DestinationPath . $EndDTM = (Get-Date) Write-Verbose "Elapsed Time: $([math]::Round( ($EndDTM-$StartDTM).TotalMinutes )) Minutes" -Verbose Write-Verbose "Starting Installation of $Vendor $Product $Version" -Verbose $StartDTM = (Get-Date) (Start-Process "$PackageName.$InstallerType" $UnattendedArgs -Wait -Passthru).ExitCode Write-Verbose "Cleaning Up" -Verbose Remove-Item -Path $TempFolder -Force -Recurse Write-Verbose "Stop logging" -Verbose $EndDTM = (Get-Date) Write-Verbose "Elapsed Time: $([math]::Round( ($EndDTM-$StartDTM).TotalMinutes )) Minutes" -Verbose Stop-Transcript |
To build the Intune application automatically you can follow the steps in the blog post Windows 365 – Building Win32 Apps for Intune Automatically. Below is the XML file.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
<Application> <Manufacturer>MathWorks</Manufacturer> <ProductName>MATLAB</ProductName> <ProductVersion>2020b</ProductVersion> <ProductCode></ProductCode> <Description>MATLAB is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages.</Description> <Installer>Install</Installer> <InstallerType>ps1</InstallerType> <Install></Install> <Path></Path> <Uninstaller>C:\Program Files\MATLAB\R2020b</Uninstaller> <Uninstall>Uninstall</Uninstall> <UninstallerPath>C:\Program Files\MATLAB\R2020b\uninstall\bin\win64</UninstallerPath> <DetectionRuleRegistry>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Matlab R2020b</DetectionRuleRegistry> <DetectionRuleValue>DisplayVersion</DetectionRuleValue> <DetectionRuleVersion>9.9</DetectionRuleVersion> <SCCM>False</SCCM> <Intune>True</Intune> <Categories></Categories> <Group>All Users</Group> <RequiredGroup>All Devices</RequiredGroup> <PilotGroup>AAD - Intune Application Testing</PilotGroup> <Owner>TROHAV</Owner> <ID>100022</ID> </Application> |
Hello Eric,
Why are you using Windows 365 (Win365) and not Azure Virtual Desktop (AVD)?
Win365:
– Simple solution
– You pay a fix monthly subscription
– No GPU support
AVD:
– More flexible
– Only pay for what you consume (Using Auto-scale)
– GPU support
– FSLogix for Profiles
– MSIX App Attach
It just seems Win365 to be more costly than AVD.
Thanks