Deploying Microsoft 365 Apps using Intune is pretty straight forward and easy, however if you like to only install Visio or Project to user with a licenses you might run into issues, this post will cover how easy package Visio and Project as separate installation packages.
- Pre-requisites
- Extracting Office Deployment Tool
- Using Pre-Configured configs
- Creating the uninstall configuration file
- Packaging Using Win32 Content Prep Tool
- Intune Application Deployment
- Manually creating configuration files examples
- References
Pre-requisites
Extracting Office Deployment Tool
Start by downloading the Office Deployment Tool use your favorite extract/unpack tool (7-Zip).
- Right click on the Office Deployment Tool (officedeploymenttool_16731-20290.exe) and select extract to folder.
You should end up with a folder looking like the image below. We only need setup.exe
Using Microsoft Pre-Configured Configs
Head over to config.office.com
- Select Standard configuration
- Select Add Visio Online Plan 2
- After making your selection go to the top of the page and select “Get Link”
You can download the file manually if you like or you can point the setup.exe to use the link to download the configuration file automatically during installation. We will be using the link in this example.
Creating the Uninstall Configuration file
We will need to manually create a Uninstallation configuration file to be able to uninstall the application separately. Below I created a sample of a Uninstallation configuration file for Visio, you would switch out the Product ID to the Office application you would like to have a uninstallation config for.
<Configuration>
<Display Level="None" AcceptEULA="TRUE"/>
<Property Name="FORCEAPPSHUTDOWN" Value="TRUE"/>
<Remove>
<Product ID="VisioProRetail"> </Product>
</Remove>
</Configuration>
Packaging using Win32 Content Prep Tool
- Place setup.exe (The file we extracted from the Office Deployment Tool before) in a empty folder.
- Place the uninstall configuration file (uninstall.xml) in the same folder as setup.exe
- Start the Win32 Content Prep Tool and specify the folder and the setup.exe file as installation file.
If you have downloaded the setup config, the configuration file should be placed in the same folder as setup.exe before you package it.
The generated file setup.intunewin is now ready to be uploaded to Intune as an application.
Intune Application Deployment
Go to Intune portal and select Apps – Windows and click “Add”
- App type: Windows app (Win32)
- Select the newly create setup.intunewin file, change the required information and upload the Visio logo. (In app version you can write “Latest”)
- Install command: setup.exe /configure “https://go.microsoft.com/fwlink/?linkid=2100547”
- Uninstall command: setup.exe /configure uninstall.xml
Done, you can now publish this and users can separately install Visio.
You can assign the required install group the same license group for Visio if you have created such. This would automatically install Visio on users that have a license and uninstall Visio if the user does not have a license. (You need to setup license group)
Manually creating configuration files examples
Setup.exe needs a configuration file to describe what it should and should not install. We can create this file manually or we can use the pre-configured configurations files supplied by Microsoft. Example below.
IMPORTANT
If you have M365 Apps installed with multiple languages using xml, you might get the error: “Language not available”
If you get this error switch to: <Language ID=”MatchOS”/>
Sample file Visio
<Configuration>
<Add Version="MatchInstalled">
<Product ID="VisioProRetail">
<Language ID="MatchOS"/>
<ExcludeApp ID="Groove"/>
<ExcludeApp ID="OneDrive"/>
</Product>
</Add>
<Property Name="SharedComputerLicensing" Value="0"/>
<Property Name="FORCEAPPSHUTDOWN" Value="TRUE"/>
<Property Name="DeviceBasedLicensing" Value="0"/>
<Property Name="SCLCacheOverride" Value="0"/>
<Property Name="TenantId" Value="Your tenant id"/>
<Updates Enabled="TRUE"/>
</Configuration>
Sample file Projects
<Configuration>
<Add Version="MatchInstalled">
<Product ID="ProjectProRetail">
<Language ID="MatchOS"/>
<ExcludeApp ID="Groove"/>
<ExcludeApp ID="OneDrive"/>
</Product>
</Add>
<Property Name="SharedComputerLicensing" Value="0"/>
<Property Name="FORCEAPPSHUTDOWN" Value="TRUE"/>
<Property Name="DeviceBasedLicensing" Value="0"/>
<Property Name="SCLCacheOverride" Value="0"/>
<Property Name="TenantId" Value="Your tenant id"/>
<Updates Enabled="TRUE"/>
</Configuration>
References
https://learn.microsoft.com/en-us/deployoffice/fieldnotes/build-dynamic-lean-universal-packages
https://learn.microsoft.com/en-us/deployoffice/overview-office-deployment-tool
I saw one problem. The script is not checking if any Office component is opened and if yes then the package will be not installed. Script should have autoclose office components outlook, word etc.
Thank you, i think i actually left this out so it does not force close for any users, but could be added, if it fails it will try next time. But you make a good point and it can easily be added. Thank you again
Hi do you have new improved method for this issue ?
Please share asap
I have no new version of this, you can use the config to change what you like. Or you can use PSDAT that can notify user to shutdown the applications before it installs