Remove the built-in Teams client and chat icon from Windows 11

After modifying the start menu of Windows 11, I also want to remove the built-in Microsoft Teams client from the OS. And besides that, I also want to remove the chat icon from the taskbar.

I want to remove these because the chat icon starts the Teams client, and this client can only be used with a personal Microsoft account. So as long as we can’t use this client with corporate accounts, I don’t want this client on my corporate Windows devices.

Let’s see how easy it is to remove the Teams client and chat icon from Windows 11.

Remove the built-in Teams client

For Windows 10 we could use the store apps, and Microsoft Intune to uninstall the built-in Windows Store apps. For Windows 11, this seems not possible because of the changes in the Store.

Another solution for Windows 10, and also for Windows 11, is to use a PowerShell script to remove those apps from Windows. On the internet, multiple scripts can be found to remove the apps from Windows. I used the below script and wrapped this as WIN32 app. But you can deploy a similar script in whatever manner you like.

If ($ENV:PROCESSOR_ARCHITEW6432 -eq "AMD64") {
    Try {
        &"$ENV:WINDIR\SysNative\WindowsPowershell\v1.0\PowerShell.exe" -File $PSCOMMANDPATH
    }
    Catch {
        Throw "Failed to start $PSCOMMANDPATH"
    }
    Exit
}

Function CleanUpAndExit() {
    Param(
        [Parameter(Mandatory=$True)][String]$ErrorLevel
    )


    # Write results to registry for Intune Detection
    $Key = "HKEY_LOCAL_MACHINE\Software$StoreResults"
    $NOW = Get-Date -Format "yyyyMMdd-hhmmss"

    If ($ErrorLevel -eq "0") {
        [microsoft.win32.registry]::SetValue($Key, "Success", $NOW)
    } else {
        [microsoft.win32.registry]::SetValue($Key, "Failure", $NOW)
        [microsoft.win32.registry]::SetValue($Key, "Error Code", $Errorlevel)
    }
    
    # Exit Script with the specified ErrorLevel
    EXIT $ErrorLevel
}

# ---------------------------------------------------------------------------- #
# Set Generic Script Variables, etc.
# ---------------------------------------------------------------------------- #
$StoreResults = "InTheCloud247\AppXRemove\v1.1"

# List of Applications to Remove
$AppPackages  = @()
$AppPackages += 'Microsoft.Xbox.TCUI'
$AppPackages += 'Microsoft.XboxApp'
$AppPackages += 'Microsoft.XboxGameOverlay'
$AppPackages += 'Microsoft.XboxIdentityProvider'
$AppPackages += 'Microsoft.XboxSpeechToTextOverlay'
$AppPackages += 'MicrosoftTeams'

$Error.Clear()
foreach ($App In $AppPackages) {

    $Package = Get-AppxPackage | Where-Object {$_.Name -eq $App}
	$ProvisionedPackage = Get-AppxProvisionedPackage -Online | Where-Object {$_.DisplayName -eq $App}
    If ($Package -ne $null) {
        Write-Host "Removing Package : $App"
        Remove-AppxPackage -Package $Package.PackageFullName
    } Else {
		Write-Host "Package $App not found"
	}

	If ($ProvisionedPackage -ne $null) {
		Write-Host "Removing ProvisionedPackage : $App"
		Remove-AppxProvisionedPackage -online -Packagename $ProvisionedPackage.Packagename
	} Else {
		Write-Host "Provisioned Package $App not found"
	}
}

If ($Error.Count -gt 0) {
    write-host "Removing AppX Packages failed: $($Error[0])"
    CleanUpAndExit -ErrorLevel 101
} else {
    write-host "Successfully Removed AppX packages"
}

CleanUpAndExit -ErrorLevel 0

To retrieve the name from the Teams client, which is used in the above script, run below in PowerShell:

Get-AppxPackage -Name *teams*

As you can see the list of apps to be removed can be expanded, to not only remove the Teams client but also other apps.

To retrieve all the apps installed for a user, run this command (but keep in mind, you can’t just remove every app from this retrieved list):

Get-AppxPackage | ft Name

If you also want to deploy the script as WIN32 app, you can follow the steps from this article, to wrap the app and add it to Microsoft Intune.
But don’t forget to change the detection rule, to the one from this script.
HKEY_LOCAL_MACHINE\Software\InTheCloud247\AppXRemove\v1.1

Remove the chat icon

To remove the chat icon from the taskbar, we have the MDM policy CSP configurechaticonvisibilityonthetaskbar available. As we can see in the documentation we can configure the setting to three values, I set it to Disabled (3).

To deploy the policy setting with Intune, we need to use a Custom configuration profile.

  • Sign in to the Microsoft Endpoint Manager admin center
  • Browse to DevicesWindowsConfiguration profiles
  • Click +Create profile
  • Select Windows 10 and later as Platform
  • Select Templates as Profile type
  • Select Custom
  • Click Create
  • Give the profile a Name
  • Enter a Description (Optional)
  • Click Next
  • On the settings tab click Add
  • Give the Row a Name
  • Fill in the OMA-URI:
    ./Device/Vendor/MSFT/Policy/Config/Experience/ConfigureChatIcon
  • Data type: Integer
  • Value: 3

Save the configuration profile and deploy it to your Windows 11 devices.

End result

The end result is off course that the chat icon is removed from the taskbar, and I’ve only left the Microsoft Teams client which is installed as part of the Office suite.

That’s it for this post. Thanks for reading.




1 Comment

Leave a Reply

Your email address will not be published.


*