In this article, am going to explain how to use PowerShell Scripts in Intune Enterprise App Catalog app. Microsoft Intune now allows you to use PowerShell scripts for installing Enterprise App Catalog apps, giving IT admins greater control and flexibility during deployment. This Intune app management feature was added to GA during the week of September 29, 2025.
Previously, the only option was to use a predefined command line, but with this enhancement, you can upload a PowerShell script to automate complex installation tasks, handle dependencies, or perform custom configurations before or after the app installation. This method simplifies deployment workflows and ensures a consistent app setup experience across all Windows managed devices.
When creating an Enterprise App Catalog deployment in Intune, you can now select the PowerShell script option under the installation method. This allows you to upload your .ps1 file directly to Intune. The script executes during app installation, following the same management and monitoring processes as traditional app deployments. You can include logic for pre-checks, logging, and conditional actions to ensure successful installations in various device environments.
Using PowerShell scripts also helps in better troubleshooting and maintenance. Admins can include robust error handling, registry checks, or verification steps within the script, making deployments more reliable. Since PowerShell is a familiar tool for most Windows administrators, this approach bridges the gap between traditional scripting and modern Intune-based app management, giving organizations more flexibility in delivering customized enterprise apps efficiently.
Table of Contents

Create TeamViewer Enterprise App Catalog app
All the Enterprise App Catalog Apps are prepackaged in Intune, so it’s easy for an Admin to create them from the Intune Portal. Follow the steps below to make any Windows apps from scratch.
- Sign In to Microsoft Intune Admin Center
- Navigate to Apps > Windows > + Create

We’ll see a new window for Selecting an app type. From the drop-down menu, select the Enterprise App Catalog app.
Note: Search the Enterprise App Catalog to find apps you would like to add to your tenant. These apps come with pre-filled information that will streamline app provisioning to the tenant and the installation process. Learn more about Enterprise App Catalog apps

The App information pane have an option to Search the Enterprise App Catalog. Clicking on that will take you to the Select App window. Microsoft does not guarantee compliance or authorizations for apps distributed through Intune. It is the customers’ responsibility to ensure that apps meet their requirements.

TeamViewer Host Intune Enterprise App Catalog app Details
See the table below for complete details about the TeamViewer Host Enterprise Catalog app currently available in Intune. In this demo, I am selecting the TeamViewer Host 64-bit package.
| Package name | Language | Architecture | Version |
|---|---|---|---|
| TeamViewer Host | en-US | x86,x64 | 15.69.5.0 |
| TeamViewer Host (x64) | en-US | x64 | 15.70.6.0 |
- Configure Windows Backup and Restore for Organizations using Intune
- Best way to Remove Default Microsoft Store Packages using Intune
- Install Zoom Client using Windows Enterprise App Catalog App with Intune
- How to Enhance Windows365 AI-Enabled Endpoint Management using Copilot in Intune
Search and Select TeamViewer Host with TeamViewer GmbH as the publisher. Click Next to view the app’s configuration details. Once confirmed, select the TeamViewer Host (x64) app and the version is 15.70.6.0.

Configure the TeamViewer Host (x64) App
Most of the details on the App Information page are pre-populated by default. Here we only have to change three options manually.
- Category – Computer management
- Show this as a featured app in the Company Portal – Yes
- Logo – download and upload a TeamViewer logo and click Next.

Create PowerShell Scripts for both Installation and Uninstallation of TeamViewer Host (x64) App
Let’s create PowerShell scripts from scratch for the installation and uninstallation processes. Please download my ready-to-use TeamViewer Host (x64) app install and uninstall script from my GitHub repository. You may also refer to the scripts listed below.
###############################################################################
#TeamViewer Host x64 Install script
#Author : Vaishnav K
#LinkedIn : https://www.linkedin.com/in/vaishnav-k-957b0589/
#Website: https://www.anoopcnair.com/author/vaishnavkuruvaikandy
###############################################################################
$exe = Join-Path -Path $PSScriptRoot -ChildPath 'TeamViewer_Host_Setup_x64.exe'
$args = '/S','/NCRC'
if (-not (Test-Path $exe)) {
Write-Error "Installer not found: $exe"
exit 1
}
$proc = Start-Process -FilePath $exe -ArgumentList $args -Wait -PassThru
Write-Output "TeamViewer installer exit code: $($proc.ExitCode)"
# Intune expects exit code 0 for success; pass through the installer exit code
exit $proc.ExitCode###############################################################################
#TeamViewer Host x64 Uninstall script
# Reliable uninstall script for TeamViewer Host via Intune Company Portal
#Author : Vaishnav K
#LinkedIn : https://www.linkedin.com/in/vaishnav-k-957b0589/
#Website: https://www.anoopcnair.com/author/vaishnavkuruvaikandy
###############################################################################
$UninstallPath = "C:\Program Files\TeamViewer\uninstall.exe"
# Check if uninstall file exists
if (-not (Test-Path $UninstallPath)) {
Write-Output "TeamViewer uninstall.exe not found at $UninstallPath"
exit 0 # treat as success if already uninstalled
}
Write-Output "Running TeamViewer Host uninstallation from $UninstallPath..."
try {
$process = Start-Process -FilePath $UninstallPath -ArgumentList "/S" -WorkingDirectory "C:\Program Files\TeamViewer" -Wait -PassThru
$exitCode = $process.ExitCode
Write-Output "Uninstall completed with exit code: $exitCode"
if ($exitCode -eq 0 -or $exitCode -eq 3010) {
exit 0
} else {
exit $exitCode
}
}
catch {
Write-Output "Uninstallation failed: $($_.Exception.Message)"
exit 1
}The main advantage of the Enterprise App Catalog app is that we don’t have to search for and test the installation and uninstallation commands. In this case, we are adding our own PowerShell scripts. To do this, click on Installer type and Uninstaller type, and change them to PowerShell script.
Click on Select custom script, enter the Script name, and upload the Install Script file. Set Enforce script signature check to No and Run script as 32-bit process on 64-bit clients to Yes. Then, select OK. In the same way, include your uninstallation script as well.

Click on Select custom script, then provide a script name and upload the Uninstall script file. Set Enforce script signature check to No and choose Run script as 32-bit process on 64-bit clients to Yes. Finally, select OK.

The Program page will also prefill all the other details, like Installation time required (mins), Allow available uninstall, Install behaviour, Device restart behavior, returns codes etc. You are also allowed to change any details.

By default, a few options will be auto-filled on the Requirements page. You can modify any of them based on the requirements. Here, I am changing the minimum operating system to Windows 11 23H2. Leaving all other details as it is.

The Rule format is already configured as Manually configured detection rules in this pane. The detection rule will also be filled out. Intune configures it via File, Registry detection methods in this application. Detection types may defer App by App.

On the next page, click +Select scope tags and select a Scope tag based on your requirements. In this deployment, I am selecting the Default scope tag.

The next step is to assign the Application to a device group. Click +Add group under Available for enrolled devices and choose a device group. I am selecting HTMD – CPC Test, one of my Windows 365 Cloud PC test Device Groups, so that we can install the app from the Company Portal.

Once you carefully validate all the information about the TeamViewer Host x64 App from the Review+create page, you can click on the Add app button. Depending on the size of the binary, the app’s creation will usually take a couple of minutes.
- How to use the Update option in Intune Enterprise App Catalog apps
- How to use Intune Enterprise App Catalog Apps in Windows Autopilot
- Intune Win32 App Supersedence and Auto App Update Explained

End User Experience of TeamViewer Host App Deployment
The TeamViewer Host x64 Enterprise app has been deployed to one of the test Cloud PC device groups in Available mode. Let’s check the app in the Company Portal and install it. Since we have already added the uninstallation script and functionality, you can also uninstall the script through the Company Portal.

Monitor the TeamViewer Host App Deployment in Intune
The App has been successfully installed on the targeted machine. At the top, we can see information about the app’s updating capability “This is the latest version of this app from Enterprise App Catalog.” To check the Intune Reporting Status, follow the steps below.
- Navigate to Apps > Windows > Search and Select TeamViewer Host (x64) > Overview

Need Further Assistance or Have Technical Questions?
Join the LinkedIn Page and Telegram group to get the latest step-by-step guides and news updates. Join our Meetup Page to participate in User group meetings. Also, Join the WhatsApp Community to get the latest news on Microsoft Technologies. We are there on Reddit as well.
Author
Vaishnav K has over 12 years of experience in SCCM, Intune, Modern Device Management, and Automation Solutions. He writes and shares knowledge about Microsoft Intune, Windows 365, Azure, Entra, PowerShell Scripting, and Automation. Check out his profile on LinkedIn.
