top of page

How to Update Windows Apps using Intune

  • Writer: Gareth Oxendine
    Gareth Oxendine
  • Aug 11, 2024
  • 6 min read

Updated: Mar 10

SUMMARY:

One of the IT department's responsibilities is to ensure the applications installed on the company's computers are running the latest version. Below are a few key reasons why:


  • to fix bugs

  • to patch security flaws

  • to prevent future problems

  • to ensure future deployed machines receive the latest version

Table of Contents


Updating MSI Applications

NOTE:

The steps below apply to any MSI app regardless of whether it came preinstalled, was installed by the user, or was deployed with Intune.

Option 1: Use Intune and a Line of Business App

With this option, we'll use Intune to install the updated app. Once deployed, the new installer will most likely update the already installed, outdated application.


Step 1: Inspect the New MSI File

Remember that MSI files have a property called the UpgradeCode. If the new MSI has the same UpgradeCode value as the original MSI, then Intune will treat these as the same application but as different versions. You may not have the original MSI file if you did not originally deploy the application with Intune.

Using Orca to view the UpgradeCode of an MSI file.
Using Orca to view the UpgradeCode of an MSI file.

Sometimes the application's vendor will change the UpgradeCode. If they do, then Intune will treat the new MSI file as a new/unique application. Depending on the application vendor's code in the new installer file, it may or may not replace the outdated version; it may be installed as a side-by-side application.


  1. Inspect the updated MSI file using an MSI viewer program like Orca.

  2. Ensure that the UpgradeCode is the same as the original MSI.

    1. If it is the same, continue to Step 2.

    2. If it is not the same, continue to Step 2 but click here to learn how to uninstall the old version.

Step 2: Test the Updated Version

IMPORTANT:

Always deploy the updated application to a few test machines first before deploying it company-wide. You never know what an update might potentially "break."

To test the new version, follow the steps below:

  1. Create a new app in Intune for testing purposes and upload the new MSI installer file.

  2. Set ignore version to no.

  3. Assign the deployment to a "test" group that contains the test machines.


Step 3: Deploy the Updated Version

Once the new version has been tested successfully, deploy it company-wide.

IMPORTANT:

Follow the steps below after hours so devices don't get the update midday. Remember that updating applications can cause downtime for the end user. For the most part, when an application updates, it closes and is unavailable for some time; we don't want users to lose work.

Also, ensure the deployment's timing won’t affect dependent applications/processes.

If the application was originally deployed using Intune:
  1. Select the app to edit it.

  2. Select Properties > Edit.

  3. Upload the new MSI file.

  4. Set Ignore Version to No.

  5. Set a reminder to change ignore version to yes after a few weeks; if the app auto-updates itself in the future, we don't want Intune uninstalling it (having ignore version set to no means that Intune will keep reinstalling the uploaded version if a different version is detected).  


If the end-user installed the application or it came preinstalled:

  1. Create a new app listing and upload the new MSI file.

  2. Set Ignore Version to No.

  3. Assign the app to the appropriate group or to "all devices/users."

  4. Set a reminder to change ignore version to yes after a few weeks; if the app auto-updates itself in the future, we don't want Intune uninstalling it (having ignore version set to no means that Intune will keep reinstalling the uploaded version if a different version is detected).


Option 2: Use Intune and a PowerShell Script

Alternatively, you can deploy a PowerShell script that uses winget to update the application; you may prefer this option if you did not originally deploy the application using Intune. Remember, winget is a command line tool that Microsoft provides to help install, uninstall, and update applications. To learn more about using winget to update applications; click the link below:


Updating EXE Applications

NOTE:

The steps below apply to any EXE app regardless of whether it came preinstalled, was installed by the user, or was deployed with Intune.

Option 1: Use Intune and a Win32 App

With this option, we'll use Intune to deploy the updated app. Once deployed, the new installer will most likely update the already installed, outdated application.

Step 1: Test the Updated Installer File

First, test what happens when you run the updated EXE file. Does the EXE update and overwrite the existing app, or does it install a new app "side-by-side" with the old one? Knowing the answer to this question will be helpful for step 3 below.

NOTE:

Ideally, the new EXE installer file will silently replace the old version of the application with the new version. This functionality, however, is dependent on the application vendor.


If the new installer file installs the app side-by-side with the old version, then updating the app will involve uninstalling the old application.

Step 2: Create the Intunewin File

Remember that you cannot upload EXE applications directly to Intune. There are a few ways to deploy EXE applications; one way is to convert the EXE to an Intunewin file format and use the Win32 Intune app deployment method. Click the link below to review:


Step 3: Test the New Win32 App Deployment

IMPORTANT:

Always deploy the updated application to a few test machines first before deploying it company-wide. You never know the effect an application update will have.

To test the new version, follow the steps below:

  1. Create a new Windows App (Win32) listing with the updated intunewin installer file. Click here to learn how.

  2. If the outdated app was deployed with Intune, then follow the steps below (if it was not, go to step 3 below).

    1. In the Supersedence section, add the original Win32 application.

    2. From the test in Step 1, choose one of the following options:

      1. If the installer updates/overwrites the existing application, select no under Uninstall Previous Version.

      2. If the installer installs the application side-by-side with the old application, select yes under Uninstall Previous Version. (Intune will uninstall the old application using the uninstall command you provided in the old Win32 app listing.) Alternatively, you can select no and deploy a PowerShell script to uninstall the old application. Click here to learn more.

  3. If the outdated app was not deployed using Intune, follow the steps below.

    1. From the test in Step 1, choose one of the following options:

      1. If the installer updates/overwrites the existing application, you don't have to do anything.

      2. If the installer installs the application side-by-side with the old application, you can deploy a PowerShell script to uninstall the old application. Click here to learn more.

  4. Assign the deployment to a "test" group that contains the test machines.


Step 4: Deploy the Updated Version

If the test is successful, you can change the Assignment method on the new app to the appropriate group or all devices/users.

IMPORTANT:

If the old application you are superseding is in a dependency relationship, ensure that you supersede the appropriate application and only one from the dependency relationship. Once you supersede the application, you may have to rebuild the dependency relationship.


  • If you are superseding the child application, re-add the dependent parent app in the dependency section of the new Win32 app.

  • If you are superseding the parent application, add the new Win32 app deployment as a dependent app in the child Win32 app.

Option 2: Use Intune and a PowerShell Script

Alternatively, you can deploy a PowerShell script that uses winget to update the application; you may prefer this option if you did not originally deploy the application using Intune. Remember, winget is a command line tool that Microsoft provides to help install, uninstall, and update applications. To learn more about using winget to update applications; click the link below:






Cover picture provided by Freepik.


Never Miss a Post. Subscribe Now!

Want to be notified whenever a new article is posted? Enter your email address and subscribe!

Thanks for submitting!

Donate to the Blog?

We hope the blog was helpful to you! If so, we'll take a donation as a form of thanks! :) 

© 2024 by DMTT. Powered and secured by Wix

$

Thank you for your donation!

bottom of page