Table of Contents
The New Teams version (sometimes also called Teams 2.0) will become the new standard for Microsoft’s communication platform from July 1, 2024. On October 1, 2024, the Classical Teams client in the VDI context will reach its end of support and, according to the latest news, its end of availability date on July 1, 2025. These end dates have been adjusted several times in recent weeks.
But the most important thing first:
The fact that New Teams is no longer offered via msi or exe package, but is only available as a UWP (Universal Windows Platform) app (MSIX package), the end-of-support and end-of-availability date for the Classical Teams client also marks the end of some operating system versions that may still be used as the basis for Citrix Worker.
The most prominent current victim is Windows Server 2016, for example, where the end-of-life date is currently set for January 12, 2027. However, since no UWP app can be integrated under Windows Server 2016, this operating system can no longer serve as a worker OS for Citrix if New Teams is also to be used there.
Prerequisites
Minimum Windows version:
- Windows 10 (Version 10.0.19041)
- Windows 11
- Windows Server 2019 (10.0.17763)
- Windows Server 2022 (10.0.20348)
Minimum Microsoft Edge WebView2 version:
- Version 90.0.818.66
Minimum Citrix versions:
- Citrix Workspace app Windows 2203 LTSR (or newer)
- Citrix Workspace App Windows 2302 CR (or newer)
- Citrix Workspace App Linux 2207
- Citrix Workspace App Mac 2302
- Citrix Workspace App Chrome/HTML5 2301
- Citrix Virtual Delivery Agent (VDA) 2203 LTSR (or newer)
- Citrix Virtual Delivery Agent (VDA) 2212 CR (or newer)
- Citrix Virtual Delivery Agent (VDA) 1912 LTSR CU 6 (or newer) – However, not all features of the New Teams Client are supported!
Script based installation
Simply use my NeverRed script for this. All my latest discoveries regarding New Teams are added to the installation routine on a daily basis.
Installation New Teams
First, the prerequisites for installing the New Teams Client must be installed on the target device. To do this, Microsoft Edge WebView2 must be installed and sideloading for UWP apps must be activated.
- Download the installation package for Microsoft Edge WebView 2
- Start the installation of Microsoft Edge WebView2
- Activate sideloading on the worker, start an Administrative PowerShell and enter the following commands:
1 2 3 |
New-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\Appx -Name AllowAllTrustedApps -Value 1 -PropertyType DWORD -Force | Out-Null New-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\Appx -Name AllowDevelopmentWithoutDevLicense -Value 1 -PropertyType DWORD -Force | Out-Null New-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\Appx -Name BlockNonAdminUserInstall -Value 0 -PropertyType DWORD -Force | Out-Null |
It must also be checked that the .Net-framework is installed higher than version 4.8 (Windows Server 2019 & Windows 10) so that the Microsoft Teams Meeting Add-in for Microsoft Office can be installed.
- Check the installed version on the worker by starting an Administrative PowerShell and enter the following command:
1 |
(Get-ItemProperty "HKLM:\Software\Microsoft\NET Framework Setup\NDP\v4\Full").Version |
If the version is lower than 4.8, it must be updated before installing New Teams.
- Download the installation package for .Net-Framework 4.8
- Start the installation of .Net-Framework 4.8
- After installing the .Net-framework, the system must be restarted
The New Teams Client is installed either directly via the MSIX package (Windows Server 2019 & Windows 10) or via Teamsbootstrapper Executable (Windows Server 2022 & Windows 11).
The method via the Teamsbootstrapper installation is the recommended version on Citrix Worker machines.
Important!
If there is still a Teams installation on the system, it must be uninstalled first.
- Download the required installation files for the New Teams
- Start the installation of the New Teams Client with the command for the underlying operating system
Windows Server 2019 & Windows 10
1 |
Dism.exe /Online /Add-ProvisionedAppxPackage /PackagePath:<Path to msix file> /SkipLicense |
Windows Server 2022 & Windows 11
1 |
.teamsbootstrapper.exe -p -o <Path to msix file> |
The New Teams installation must then be optimized for Citrix.
- Start an Administrative PowerShell and enter the following command:
1 2 |
reg add "HKLM\SOFTWARE\WOW6432Node\Citrix\WebSocketService" /v ProcessWhitelist /t REG_Multi_SZ /d msedgewebview2.exe /f | Out-Null reg add "HKLM\SOFTWARE\MicrosoftTeams" /v disableAutoUpdate /t REG_DWORD /d 1 /f | Out-Null |
This is no longer necessary as of Citrix Virtual Apps and Desktops version 2402.
Installation Teams Meeting Add-in
The add-in still needs to be installed and configured so that you can continue to schedule Teams meetings via Microsoft Outlook.
- Start an Administrative PowerShell and enter the following command:
1 |
msiexec.exe /i "$((Get-ChildItem -Path 'C:\Program Files\WindowsApps' -Filter 'MSTeams*').FullName)MicrosoftTeamsMeetingAddinInstaller.msi" Reboot=ReallySuppress ALLUSERS=1 TARGETDIR="C:\Windows\MicrosoftTeamsMeetingAddin" /qn |
- After installation, the add-in must be registered by executing the following commands:
1 2 3 4 5 6 7 8 9 10 11 |
$appX64DLL = (Get-ChildItem -Path "C:\Windows\Microsoft\TeamsMeetingAddin\x64" -Include "Microsoft.Teams.AddinLoader.dll" -Recurse).FullName $appX86DLL = (Get-ChildItem -Path "C:\Windows\Microsoft\TeamsMeetingAddin\x86" -Include "Microsoft.Teams.AddinLoader.dll" -Recurse).FullName Start-Process -FilePath ""$env:WinDir\SysWOW64\regsvr32.exe" -ArgumentList "/s /n /i:user `"$appX64DLL`"" -ErrorAction SilentlyContinue Start-Process -FilePath ""$env:WinDir\SysWOW64\regsvr32.exe" -ArgumentList "/s /n /i:user `"$appX86DLL`"" -ErrorAction SilentlyContinue If (!(Test-Path 'HKLM:\Software\Microsoft\Office\Outlook\Addins\')) {New-Item -Path "HKLM:\Software\Microsoft\Office\Outlook\Addins\" | Out-Null} New-Item -Path "HKLM:\Software\Microsoft\Office\Outlook\Addins" -Name "TeamsAddin.FastConnect" -Force -ErrorAction Ignore | Out-Null New-ItemProperty -Path "HKLM:\Software\Microsoft\Office\Outlook\Addins\TeamsAddin.FastConnect" -Type "DWord" -Name "LoadBehavior" -Value 3 -force | Out-Null New-ItemProperty -Path "HKLM:\Software\Microsoft\Office\Outlook\Addins\TeamsAddin.FastConnect" -Type "String" -Name "Description" -Value "Microsoft Teams Meeting Add-in for Microsoft Office" -force | Out-Null New-ItemProperty -Path "HKLM:\Software\Microsoft\Office\Outlook\Addins\TeamsAddin.FastConnect" -Type "String" -Name "FriendlyName" -Value "Microsoft Teams Meeting Add-in for Microsoft Office" -force | Out-Null If (!(Test-Path 'HKLM:\Software\Microsoft\Office\Outlook\Addins\')) {New-Item -Path "HKLM:\Software\Microsoft\Office\Outlook\Addins\" | Out-Null} |
Profile solution
The following paths must be included in the New Teams:
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbwe
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbweSettingssettings.dat
- %LocalAppData%Publishers8wekyb3d8bbweTeamsSharedConfigapp_switcher_settings.json
- %LocalAppData%Publishers8wekyb3d8bbweTeamsSharedConfigtma_settings.json
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbweAC
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbweAppData
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbweLocalCache
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbweLocalState
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbweRoamingState
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbweSettings
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbweSystemAppData
- %LocalAppData%PackagesMSTeams_8wekyb3d8bbweTempState
The following profile solutions are supported:
- Minimum FSLogix Version 2210 Hotfix 3
- Minimum Citrix Profile Management Version 2308
- Aktivierung vom UWP App Roaming Feature
Anti-Virus
The following anti-virus process exceptions must be stored for the New Teams:
- ms-teams.exe
- ms-teamsupdate.exe
Limitations
The following known topics and features are currently not available in New Teams in VDI:
- Screen sharing from the chat for Citrix only when using Workspace app 2311
- msteams_autostart.exe “The parameter is incorrect”: In non-persistent environments that use FSLogix (all versions prior to 2210 HotFix 4) or Citrix Profile Manager profile containers, the error is issued when new teams try to start automatically or when a user tries to start teams from the start menu
- New Teams is not started by users who log in to non-persistent virtual desktops, or the application is not visible in the start menu
- Admins do not have this problem – after installing new teams on the golden image, they can start it successfully
- After sealing the golden image and deploying at scale (using provisioning tools such as Citrix MCS/PVS), users log in to the virtual machines and click on the new Teams icon but are unable to launch the app. The issue is caused by a failed registration of the MSIX package at user level with different profile management software (FSLogix before 2210 HotFix 4, Citrix CPM 2308 or 2311, but not on 2402 etc.), although the deployment of the package was successful (the OS saved the content of the package to disk in the %ProgramFiles%WindowsApps directory). This issue can be confirmed by running Get-AppxPackage -name MsTeams for the affected users. If you run this code, an empty output will be returned.
- The PowerShell window is displayed after New Teams has been deployed. To prevent this, the registry key listed below must be deleted.
1 2 |
Location: "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" Name: TeamsProvisionRunKey |
New features in New Teams for VDI
The following features are included in New Teams for VDI, compared to Classical Teams:
- Multitenant Multi-Account
- Performance improvements in the consumption of hardware resources
- Channels 2.0
- Multiple windows are activated by default without the need for a restart
- Improvements to the sharing toolbar (including pinning/unpinning)
I’ve gone through your script and made some corrections as it’s missing syntax and added a little automation
$URL01 = ‘https://go.microsoft.com/fwlink/?linkid=2243204&clcid=0x409’$APP01 = ‘teamsbootstrapper.exe’
$URL02 = ‘https://go.microsoft.com/fwlink/?linkid=2196106’$APP02 = ‘MSTeams-x64.msix’
$ZScalerProxy = “<PROXY>”[system.net.webrequest]::defaultwebproxy = new-object system.net.webproxy($ZScalerProxy)[system.net.webrequest]::defaultwebproxy.credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials[system.net.webrequest]::defaultwebproxy.BypassProxyOnLocal = $true
[Net.ServicePointManager]::SecurityProtocol = ([Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Ssl3 -bor [Net.SecurityProtocolType]::Tls -bor [Net.SecurityProtocolType]::Tls11 -bor [Net.SecurityProtocolType]::Tls12 -bor [Net.SecurityProtocolType]::Tls13)
add-type @”using System.Net;using System.Security.Cryptography.X509Certificates;public class TrustAllCertsPolicy : ICertificatePolicy {public bool CheckValidationResult(ServicePoint srvPoint, X509Certificate certificate,WebRequest request, int certificateProblem) {return true;}}”@[System.Net.ServicePointManager]::CertificatePolicy = New-Object TrustAllCertsPolicy
Invoke-WebRequest $URL01 -OutFile “C:\Temp\$APP01” -proxy $ZScalerProxyInvoke-WebRequest $URL02 -OutFile “C:\Temp\$APP02” -proxy $ZScalerProxy
New-ItemProperty -Path HKLM:SOFTWARE\Policies\Microsoft\Windows\Appx -Name AllowAllTrustedApps -Value 1 -PropertyType DWORD -Force | Out-NullNew-ItemProperty -Path HKLM:SOFTWARE\Policies\Microsoft\Windows\Appx -Name AllowDevelopmentWithoutDevLicense -Value 1 -PropertyType DWORD -Force | Out-NullNew-ItemProperty -Path HKLM:SOFTWARE\Policies\Microsoft\Windows\Appx -Name BlockNonAdminUserInstall -Value 0 -PropertyType DWORD -Force | Out-Null
Start-Process -Wait “C:\Temp\$APP01” -ArgumentList “-p -o C:\Temp\$APP02”
reg add “HKLM\SOFTWARE\MicrosoftTeams” /v disableAutoUpdate /t REG_DWORD /d 1 /f | Out-Null
msiexec.exe /i “$((Get-ChildItem -Path ‘C:\Program Files\WindowsApps’ -Filter ‘MSTeams*’).FullName)\MicrosoftTeamsMeetingAddinInstaller.msi” Reboot=ReallySuppress ALLUSERS=1 TARGETDIR=”C:\Windows\Microsoft\TeamsMeetingAddin” /qn
$appX64DLL = (Get-ChildItem -Path “C:\Windows\Microsoft\TeamsMeetingAddin\x64” -Include “Microsoft.Teams.AddinLoader.dll” -Recurse).FullName$appX86DLL = (Get-ChildItem -Path “C:\Windows\Microsoft\TeamsMeetingAddin\x86” -Include “Microsoft.Teams.AddinLoader.dll” -Recurse).FullName
Start-Process -FilePath “$env:WinDir\SysWOW64\regsvr32.exe” -ArgumentList “/s /n /i:user
"$appX64DLL
“” -ErrorAction SilentlyContinueStart-Process -FilePath “$env:WinDir\SysWOW64\regsvr32.exe” -ArgumentList “/s /n /i:user"$appX86DLL
“” -ErrorAction SilentlyContinueIf (!(Test-Path ‘HKLM:SOFTWARE\Microsoft\Office\Outlook\Addins’)) {New-Item -Path “HKLM:SOFTWARE\Microsoft\Office\Outlook\Addins” | Out-Null}New-Item -Path “HKLM:SOFTWARE\Microsoft\Office\Outlook\Addins” -Name “TeamsAddin.FastConnect” -Force -ErrorAction Ignore | Out-Null
New-ItemProperty -Path “HKLM:SOFTWARE\Microsoft\Office\Outlook\Addins\TeamsAddin.FastConnect” -Type “DWord” -Name “LoadBehavior” -Value 3 -force | Out-Null
New-ItemProperty -Path “HKLM:SOFTWARE\Microsoft\Office\Outlook\Addins\TeamsAddin.FastConnect” -Type “String” -Name “Description” -Value “Microsoft Teams Meeting Add-in for Microsoft Office” -force | Out-Null
New-ItemProperty -Path “HKLM:SOFTWARE\Microsoft\Office\Outlook\Addins\TeamsAddin.FastConnect” -Type “String” -Name “FriendlyName” -Value “Microsoft Teams Meeting Add-in for Microsoft Office” -force | Out-Null
I have issues with the Presence function to work with Outlook. The presence status is not working with Teams 2.1. Anybody have any solution?
I see the Microsoft documentation do not mention the NET Framework version have to be 4.8. I am not running NET Framework 4.8 on my VDA Servers. Where did you find that NET Framework version 4.8 is required by Teams 2.1?
Another question i am running Windows Server 2019 and i have only enabled “Developer mode” during installation of Teams 2.1 after installation is complete i have disabled “Developer Mode” For proper running av Teams 2.1 do i need to keep the OS in Developer mode and not revert back to normal mode?
I have issues with not Presence is not showing up in Outlook. In the Micrsoft guide:
Outlook presence integration with New Teams in Windows Server 2019
For Outlook to properly display presence status, the following steps are required on the golden image:
Install machine-wide (ALLUSERS=1) the ‘Windows 10 1809 and Windows Server 2019 KB5035849 240209_02051 Feature Preview.msi‘.
Open your Group Policy Editor. Navigate to Computer Configuration\Administrative Templates\KB5035849 240209_02051 Feature Preview\Windows 10, version 1809 and Windows Server 2019. Change the value of that Setting to Enabled.
Install KB5035849 March 2024 cumulative update from the Microsoft Update Catalog or WSUS for Enterprises.
Install machine-wide (ALLUSERS=1) the ‘MSTeamsNativeUtility.msi‘.
Reboot the virtual machine.
Install new Teams 24033.811.2738.2546 or higher, using Dism as described in the section above.
In your guide you have not installed MSTeamsNativeUtility.msi‘.
Is Presence working for you?
Hi Vashan, actually we are having the same issue on WS2019. Interestingly the addon works in Outlook as I can schedule Teams meetings but the presence is not showing no matter what I do.
Have followed the Microsoft article, even tried to register those 2 dlls to no avail.
Hi Guys, I’m on the problem….give me a little more time 🙂
Thanks Manuel. I’ve just opened a case with Microsoft but as always – these cases last for weeks/months.
Presence in Outlook refers to GUID”=”{88435F68-FFC1-445F-8EDF-EF78B84BA1C7}”
I think after installing New Teams via DISM on the 2019 server, this class is missing in the registry entries. It is only in the Outlook configuration.
On windows 10 it is HKEY_CLASSES_ROOT\PackagedCom\ClassIndex\{88435F68-FFC1-445F-8EDF-EF78B84BA1C7}
Awesome Article.
Recently upgraded PVS vDisk from Windows Server 2016 OS to Windows Server 2022 (Version 10.0.20348), PVS TD Agent 2203 LTSR CU4 and VDA 2203 LTSR CU4 Update 1.
We’re using FSLogix for Profile solution and Hotfix 4 in installed.
1) All is working fine so far Except Outlook Teams Meeting addin isn’t available for new Users. It comes up as Skype Addin. Any Ideas??
2) Any Registry settings needs to be updated for new teams to work with FSLOgix??
Thanks in Advance
How do you fix the issue you mention regarding New Teams not starting for some users?
I’ve tried running the “Get-AppxPackage -name MsTeams” with a user, where Teams is not working and no output is shown. A workaround could be a new FSLogix profile but with 1000+ users where it’s an issue for most, this won’t be a good solution.
We’re running Citrix VDI and I’ve tried the FSLogix Hotfix4
We have the same issue with non persistent windows 10, with fslogix hotfix 4 deployed. I have a case open with MS for few weeks now, but as expected they are clueless till now
Did you find a fix for this?
Did Anyone found a fix for this? Don’t want to create a new profile for 1000+ users
Hi !
Same issue here. Does anyone have a solution ?
see my solution/workaround in the end of the replies
Hi Manuel, very helpful article, thank you for that.
How do you update new teams when the pvs golden image is open?
BR Samuel
DISM didn’t work on Server 2019. Run this instead:
Add-AppProvisionedPackage -online -packagepath “C:\temp\Sample App-x64.msix”-skiplicense
The cmdlet might just be a wrapper for DISM, but it worked for me and DISM didn’t. YMMV
Please review this code:
reg add “HKLM\SOFTWARE\MicrosoftTeams” /v disableAutoUpdate /t REG_DWORD /d 1 /f | Out-Null
It should have a backslash here => Microsoft\Teams
this is a really useful article and I am using it in a Microsoft support call as their own article did not detail how to provision the Outlook add in.
The problem I have is after sideloading the Teams MSIX with DSIM successfully, there is no c:\program files\windowsapps or c:\program files (x86)\windowsapps to find the MSI for the meeting add in – i am using the x86 Teams on one RDS because of an old finance system which has Excel plugins which require x86 Excel.
Teams is also not starting automatically even though that option is checked in the clietn – it does not seem to be setting the related registry setting.
This is such a frustrating lack of support for RDS by Microsoft.
ok i found at least one workaround – turning the MSIX into a zip file i was able to grab the MSI i needed directly from there for both x86 and x64 versions.
Path c:\program files\windowsapps exist, but its hidden and you cant browse directly this folder. This worked for me :
$msiLocation = (Get-AppPackage -Name ‘msteams’).InstallLocation.toString() + “\MicrosoftTeamsMeetingAddinInstaller.msi”
msiexec.exe /i “$msiLocation” Reboot=ReallySuppress ALLUSERS=1 TARGETDIR=”C:\Windows\MicrosoftTeamsMeetingAddin” /passive
thanks for the response Andrei. Yes, it turns out it was in the x64 program files (even though it was the x86 app), still i got it from the MSIX and have installed it with a simple version of the msiexec pointing to where I saved the MSI.
now onto the next set of problems – presence in outlook not working as experienced by other posters, no auto-launch of Teams on session login and users having to periodically re-authenticate Teams (which I have not yet worked out the conditions for) and the consequences of BlockAADWorkplaceJoin because ‘sign in for all apps’ on Windows 2019 throws an error to users who then email me.
Microsoft still did not have this ready for reliable production roll out but I am sure they would rather everyone switch to their more expensive VDI over RDS.
Pretty complete procedure from Manuel, thank!
Fix for presence:
https://learn.microsoft.com/en-us/answers/questions/1791960/outllook-presence-not-working-after-moving-to-new
https://learn.microsoft.com/en-us/microsoftteams/troubleshoot/teams-im-presence/issues-with-presence-in-outlook?tabs=64
Fix for auto-launch:
use following user logon PS script via GPO:
if (-not (Test-Path -Path “$env:USERPROFILE\AppData\Local\Microsoft\WindowsApps\ms-teams.exe”-PathType Leaf)) {
start-sleep -Seconds 15
}
$InstallLocation = Get-AppxPackage -Name ‘*Teams*’ | Select-Object -ExpandProperty InstallLocation
$ManifestPath = $InstallLocation + ‘\Appxmanifest.xml’
Add-AppxPackage -Path $ManifestPath -Register -DisableDevelopmentMode
ms-teams.exe
exit 0
Great article who would of thought that the installation and configuration of a application could be so complex !!! Microsoft are a joke….
Anyone get the outlook teams add in working – every time outlook loads it tries to install the add-in into users’ profile which fails unless you have these registry keys:
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer\DisableUserInstalls = 0
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer\DisableMSI = 0
It then however installs add-into users profile instead of running from target directory as per the script –
msiexec.exe /i “$((Get-ChildItem -Path ‘C:\Program Files\WindowsApps’ -Filter ‘MSTeams*’).FullName)MicrosoftTeamsMeetingAddinInstaller.msi” Reboot=ReallySuppress ALLUSERS=1 TARGETDIR=”C:\Windows\MicrosoftTeamsMeetingAddin” /qn