Auf Englisch lesen

Freigeben über


Beheben von Problemen beim Starten der neuen Teams-App

Problembeschreibung

Wenn Sie die Umschaltfläche "Neue Teams ausprobieren" in klassischen Microsoft Teams aktivieren, wird die neue Teams-App nicht gestartet. Stattdessen wird ein Banner angezeigt und die folgende Fehlermeldung angezeigt:

Es ist ein Problem aufgetreten.

Wenn Sie die Protokolldatei für klassische Teams überprüfen, wird der folgende Fehlereintrag protokolliert:

message: Launch api returns false, code: 11, apiCode: undefined, extendedErrorCode: 0, launchStatus: failed, status: failure, scenario: <scenarioGUID>, scenarioName: launch_pear_app, name: launch_pear_app

Ursache

Dieses Problem kann auf eine der folgenden Ursachen zurückzuführen sein:

  • Die Ordner "Cookies " und "Cacheshell " verweisen auf einen Analysepunkt.
  • Die Variablen "TEMP" oder "TMP " zeigen auf einen Analysepunkt.
  • Sie verfügen nicht über die Leseberechtigung für den Zugriff auf bestimmte Ordner im AppData-Ordner.
  • Einige Ordner im Ordner "AppData " werden so geändert, dass sie als Analysepunkte verwendet werden.
  • Der Ordner "AppData " enthält ungültige Dateien mit demselben Namen wie die erforderlichen Systemordner.
  • Das SYSTEM-Konto und die Gruppe "Administratoren" verfügen nicht über die Berechtigung "Vollzugriff " für bestimmte Ordner im Ordner "AppData ".
  • Sie verfügen nicht über die SYSAPPID-Berechtigung für den Microsoft Teams-Installationsspeicherort.
  • Die Richtlinieneinstellung AllowAllTrustedApps verhindert, dass neue Teams gestartet werden.

Lösung

Um die entsprechende Lösung für dieses Problem anzuwenden, müssen Sie mehrere Prüfungen durchführen, um die Ursache des Problems zu ermitteln. Es gibt zwei Optionen zum Ausführen aller erforderlichen Diagnoseprüfungen. Verwenden Sie die gewünschte Option.

Option 1: Ausführen eines Skripts

Das PowerShell-Skript "TeamsLaunchCheck.ps1 " automatisiert alle Prüfungen, die Sie ausführen müssen.

Das Skript "TeamsLaunchCheck.ps1"
# $erroractionpreference="stop"

$list = @(
    "$env:APPDATA", 
    "$env:APPDATA\Microsoft", 
    "$env:APPDATA\Microsoft\Crypto", 
    "$env:APPDATA\Microsoft\Internet Explorer", 
    "$env:APPDATA\Microsoft\Internet Explorer\UserData", 
    "$env:APPDATA\Microsoft\Internet Explorer\UserData\Low",
    "$env:APPDATA\Microsoft\Spelling", 
    "$env:APPDATA\Microsoft\SystemCertificates",
    "$env:APPDATA\Microsoft\Windows", 
    "$env:APPDATA\Microsoft\Windows\Libraries",
    "$env:APPDATA\Microsoft\Windows\Recent",
    "$env:LOCALAPPDATA",
    "$env:LOCALAPPDATA\Microsoft",
    "$env:LOCALAPPDATA\Microsoft\Windows",
    "$env:LOCALAPPDATA\Microsoft\Windows\Explorer",
    "$env:LOCALAPPDATA\Microsoft\Windows\History",
    "$env:LOCALAPPDATA\Microsoft\Windows\History\Low",
    "$env:LOCALAPPDATA\Microsoft\Windows\History\Low\History.IE5",
    "$env:LOCALAPPDATA\Microsoft\Windows\IECompatCache",
    "$env:LOCALAPPDATA\Microsoft\Windows\IECompatCache\Low",
    "$env:LOCALAPPDATA\Microsoft\Windows\IECompatUaCache",
    "$env:LOCALAPPDATA\Microsoft\Windows\IECompatUaCache\Low",
    "$env:LOCALAPPDATA\Microsoft\Windows\INetCache",
    "$env:LOCALAPPDATA\Microsoft\Windows\INetCookies",
    "$env:LOCALAPPDATA\Microsoft\Windows\INetCookies\DNTException",
    "$env:LOCALAPPDATA\Microsoft\Windows\INetCookies\DNTException\Low",
    "$env:LOCALAPPDATA\Microsoft\Windows\INetCookies\Low",
    "$env:LOCALAPPDATA\Microsoft\Windows\INetCookies\PrivacIE",
    "$env:LOCALAPPDATA\Microsoft\Windows\INetCookies\PrivacIE\Low",
    "$env:LOCALAPPDATA\Microsoft\Windows\PPBCompatCache",
    "$env:LOCALAPPDATA\Microsoft\Windows\PPBCompatCache\Low",
    "$env:LOCALAPPDATA\Microsoft\Windows\PPBCompatUaCache",
    "$env:LOCALAPPDATA\Microsoft\Windows\PPBCompatUaCache\Low",
    "$env:LOCALAPPDATA\Microsoft\WindowsApps",
    "$env:LOCALAPPDATA\Packages",
    "$env:LOCALAPPDATA\Publishers",
    "$env:LOCALAPPDATA\Publishers\8wekyb3d8bbwe",
    "$env:LOCALAPPDATA\Temp",
    "$env:USERPROFILE\AppData\LocalLow",
    "$env:USERPROFILE\AppData\LocalLow\Microsoft",
    "$env:USERPROFILE\AppData\LocalLow\Microsoft\Internet Explorer",
    "$env:USERPROFILE\AppData\LocalLow\Microsoft\Internet Explorer\DOMStore",
    "$env:USERPROFILE\AppData\LocalLow\Microsoft\Internet Explorer\EdpDomStore",
    "$env:USERPROFILE\AppData\LocalLow\Microsoft\Internet Explorer\EmieSiteList",
    "$env:USERPROFILE\AppData\LocalLow\Microsoft\Internet Explorer\EmieUserList",
    "$env:USERPROFILE\AppData\LocalLow\Microsoft\Internet Explorer\IEFlipAheadCache"
)

$ver = Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\'
$script:osVersion = $ver.DisplayVersion
if($script:osVersion -eq "")    {
        $script:osVersion = $ver.ReleaseId
}
$script:osBuild = (Get-WmiObject -Class Win32_OperatingSystem).Version
$script:osUBR= [int]$ver.UBR
$script:osFullBuild = [version]"$script:osBuild.$script:osUBR"
$script:osProductName = $ver.ProductName

function ValidateShellFolders
{
    $shellFolders = @(
        "Cookies",
        "Cache"
    )

    $shellPaths = @{}

    $path = "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"    
    $keys = Get-Item $path
    $props = Get-ItemProperty $path
    ($keys).Property | %{
        $shellPaths[$_] = $props."$_"
        $str = $props."$_"
        $str += "`t: " + $_
        echo $str
    }

    foreach($shellFolder in $shellFolders)
    {
        $shellPath = $shellPaths[$shellFolder]
        if(PathContainsReparsePoint($shellPath))
        {
            Write-Warning "$($shellFolder) User Shell Folder path $shellPath contains a reparse point."
        }
        else
        {
            Write-Host "$($shellFolder) User Shell Folder path $shellPath is not a reparse point" -ForegroundColor Green
        }
    }
}

function ValidateEnvironmentVars
{
    $temps = (gci env:* | ?{@("TEMP", "TMP").Contains($_.Name)})
    foreach($temp in $temps)
    {
        if(PathContainsReparsePoint($temp.Value))
        {
            Write-Warning "$($temp.Name): $($temp.Value) contains a reparse point."
        }
        else
        {
            Write-Host "$($temp.Name): $($temp.Value) is not a reparse point" -ForegroundColor Green
        }
    }
}

function ValidateUserAccess($list)
{
    $checked = @()
    foreach ($path in $list)
    {
        $left = $path
        for($i=0;$i -lt 10; $i++)
        {
            if ([string]::IsNullOrEmpty($left))
            {
                break;
            }
            if(-Not $checked.Contains($left))
            {
                try
                {
                    if (Test-Path -Path $left)
                    {
                        $items = Get-ChildItem $left -ErrorAction SilentlyContinue -ErrorVariable GCIErrors
                        if($GCIErrors.Count -eq 0)
                        {
                            Write-Host "User is able to access $left" -ForegroundColor Green
                        }
                        else
                        {
                            Write-Warning "$left is missing permissions for the current user."
                        }
                        $checked += $left
                    }
                    else
                    {
                        Write-Host "MISSING: $path" -ForegroundColor Green
                    }
                }
                catch
                {
                    Write-Warning "Error trying to access $left."
                }
            }
            $left=Split-Path $left
        }
    }
}

function ValidatePaths($list)
{
    foreach ($path in $list)
    {
        if (Test-Path -Path $path)
        {
            if (Test-Path -Path $path -PathType Container)
            {
                Write-Host "Folder: $path" -ForegroundColor Green
            }
            else
            {
                Write-Warning "FILE: $path"
            }
        }
        else
        {
            Write-Host "MISSING: $path" -ForegroundColor Green
        }
    }
}

function ValidateSystemPerms($list)
{
    foreach ($path in $list)
    {
        if (Test-Path -Path $path)
        {
            $systemPerms = (Get-Acl $path).Access | where {$_.IdentityReference -eq "NT AUTHORITY\SYSTEM"}
            $systemFullControl = $systemPerms | where {$_.FileSystemRights -eq "FullControl" -and $_.AccessControlType -eq "Allow"}
            if($systemFullControl.Count -ge 1)
            {
                Write-Host "$path has the correct permissions assigned for SYSTEM account" -ForegroundColor Green
            }
            else
            {
                Write-Warning "$path is missing permissions for the SYSTEM account. The current permissions:"
                $systemPerms
            }
            $adminPerms = (Get-Acl $path).Access | where {$_.IdentityReference -eq "BUILTIN\Administrators"}
            $adminFullControl = $adminPerms | where {$_.FileSystemRights -eq "FullControl" -and $_.AccessControlType -eq "Allow"}
            if($adminFullControl.Count -ge 1)
            {
                Write-Host "$path has the correct permissions assigned for Administrators group" -ForegroundColor Green
            }
            else
            {
                Write-Warning "$path is missing permissions for the Administrators group. The current permissions:"
                $adminPerms
            }
        }
        else
        {
            Write-Host "MISSING: $path" -ForegroundColor Green
        }
    }
}

function ValidateSysAppIdPerms
{
    $apps = Get-AppxPackage MSTeams 
    foreach($app in $apps)
    {
        $perms = (Get-Acl $app.InstallLocation).sddl -split "\(" | ?{$_ -match "WIN:/\/\SYSAPPID"}
        if($perms.Length -gt 0)
        {
            Write-Host "$($app.InstallLocation) has the correct SYSAPPID permissions assigned" -ForegroundColor Green
        }
        else
        {
            Write-Warning "$($app.InstallLocation) is missing SYSAPPID permissions."
        }
    }
}

function IsReparsePoint([string]$path) 
{

    $props = Get-ItemProperty -Path $path -ErrorAction SilentlyContinue
    if($props.Attributes -match 'ReparsePoint')
    {
        return $true
    }
    return $false
}

function PathContainsReparsePoint($path, $trace = $false)
{
    $badPaths = 0
    $result = ""
    $left = $path
    for($i=0;$i -lt 10; $i++)
    {
        if ([string]::IsNullOrEmpty($left))
        {
            break;
        };
        if(IsReparsePoint($left))
        {
            $result = "Y" + $result
            $badPaths++
        }
        else{
            $result = "N" + $result
        }
        $left=Split-Path $left
    }
    if($trace)
    {
        if ($result.Contains("Y"))
        {
            Write-Warning "$result $path contains a reparse point"
        }
        else
        {
            Write-Host "$result $path" -ForegroundColor Green
        }
    }
    return $badPaths -gt 0
}

function ValidateAppXPolicies()
{
    $osPatchThresholds = @{
        "10.0.19044" = 4046 #Win 10 21H2
        "10.0.19045" = 3636 #Win 10 22H2
        "10.0.22000" = 2777 #Win 11 21H2
        "10.0.22621" = 2506 #Win 11 22H2
    }

    $minPatchVersion = [version]"10.0.19044"
    $maxPatchVersion = [version]"10.0.22621"

    if($script:osFullBuild -lt $minPatchVersion)
    {
        if(-Not (HasAllowAllTrustedAppsKeyEnabled))
        {
            Write-Warning "AllowAllTrustedApps is not enabled and OS version is too low to get the AllowAllTrustedApps patch."
        }
        else
        {
            Write-Host "The OS version is too low to get the AllowAllTrustedApps patch, but AllowAllTrustedApps is a supported value" -ForegroundColor Green
        }
    }
    elseif($script:osFullBuild -le $maxPatchVersion)
    {
        $targetUBR = $osPatchThresholds[$script:osBuild]
        if($script:osUBR -lt $targetUBR)
        {
            if(-Not (HasAllowAllTrustedAppsKeyEnabled))
            {
                $recommendedVersion = [version]"$script:osBuild.$targetUBR"
                Write-Warning "AllowAllTrustedApps is not enabled and your version of Windows does not contain a required patch to support this.`nEither update your version of Windows to be greater than $recommendedVersion, or enable AllowAllTrustedApps"
            }
            else
            {
                Write-Host "OS version is missing the AllowAllTrustedApps patch, but AllowAllTrustedApps is a supported value" -ForegroundColor Green
            }
        }
        else
        {
            Write-Host "OS version has the AllowAllTrustedApps patch" -ForegroundColor Green
        }
    }
    else
    {
        Write-Host "OS version is high enough that AllowAllTrustedApps should not be an issue" -ForegroundColor Green
    }
}

function HasAllowAllTrustedAppsKeyEnabled
{
    $hasKey = $false;
    $appXKeys = @("HKLM:\Software\Microsoft\Windows\CurrentVersion\AppModelUnlock", "HKLM:\Software\Policies\Microsoft\Windows\Appx")
    foreach ($key in $appXKeys)
    {
        try
        {
            $value = Get-ItemPropertyValue -Path $key -Name "AllowAllTrustedApps"
            echo "$key AllowAllTrustedApps = $value"
            if ($value -ne 0) 
            {
                $hasKey = $true
                break;
            }
        }
        catch
        {
            echo "Missing AllowAllTrustedApps key at $key"
        }
    }
    return $hasKey
}

echo "$script:osProductName Version $script:osVersion, Build $script:osFullBuild"
echo ""
echo "# Checking for reparse points in user shell folders"
ValidateShellFolders
echo ""
echo "# Checking for reparse points in temp/tmp environment variables"
ValidateEnvironmentVars
echo ""
echo "# Checking for user permissions in appdata"
ValidateUserAccess($list)
echo ""
echo "# Checking for reparse points in appdata"
foreach ($path in $list)
{
    $result = PathContainsReparsePoint $path $true
}
echo ""
echo "# Checking for unexpected files in appdata"
ValidatePaths($list)
echo ""
echo "# Checking SYSTEM and Administrators permissions in appdata"
ValidateSystemPerms($list)
echo ""
echo "# Checking SYSAPPID permissions"
ValidateSysAppIdPerms
echo ""
echo "# Checking if AllowAllTrustedApps is valid"
ValidateAppXPolicies

Pause

Option 2: Manuelles Ausführen der Prüfungen

Wichtig

Dieser Abschnitt, diese Methode bzw. diese Aufgabe enthält eine Beschreibung der Schritte zum Bearbeiten der Registrierung. Durch die falsche Bearbeitung der Registrierung können schwerwiegende Probleme verursacht werden. Daher müssen Sie sicherstellen, dass Sie diese Schritte sorgfältig ausführen. Zum Hinzufügen des Schutzes sichern Sie die Registrierung, bevor Sie sie ändern. Anschließend können Sie die Registrierung wiederherstellen, wenn ein Problem auftritt.

  1. Überprüfen Sie, ob die Ordner "Cookies " und "Cacheshell " auf einen Speicherort verweisen, der einen Analysepunkt darstellt:

    1. Führen Sie die folgenden PowerShell-Befehle aus:

      (gp ([environment]::getfolderpath("Cookies"))).Attributes -match 'ReparsePoint'
      (gp ([environment]::getfolderpath("InternetCache"))).Attributes -match 'ReparsePoint'
      
    2. Wenn beide Befehle "False" zurückgeben, fahren Sie mit Schritt 2 fort. Öffnen Sie andernfalls den Registrierungs-Editor, und suchen Sie den folgenden Unterschlüssel:

      Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders

    3. Aktualisieren Sie für den Shellordner im PowerShell-Befehl, der als True zurückgegeben wird, den Wert des zugeordneten Registrierungseintrags an einen Speicherort, der kein Analysepunkt ist. Sie können beispielsweise den Wert auf den Standardpfad festlegen:

    Registrierungseintrag Wert
    Cookies %USERPROFILE%\AppData\Local\Microsoft\Windows\INetCookies
    cache %USERPROFILE%\AppData\Local\Microsoft\Windows\INetCache
  2. Überprüfen Sie, ob die Werte der TEMP - oder TMP-Umgebungsvariablen auf einen Analysepunkt festgelegt sind:

    1. Führen Sie den folgenden PowerShell-Befehl aus:

      gci env:* | ?{@("TEMP", "TMP").Contains($_.Name)} | %{$_.Value+" - "+((gp $_.Value).Attributes -match 'ReparsePoint')}
      
    2. Wenn der Befehl "False" zurückgibt, fahren Sie mit Schritt 3 fort. Legen Sie andernfalls den Wert der Umgebungsvariablen auf einen Speicherort fest, der kein Analysepunkt ist.

  3. Überprüfen Sie, ob Sie über die Leseberechtigung für den Zugriff auf alle folgenden Verzeichnisse im AppData-Ordner verfügen:

    • %USERPROFILE%\AppData\Local
    • %USERPROFILE%\AppData\Local\Microsoft
    • %USERPROFILE%\AppData\Local\Microsoft\Windows
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\Explorer
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\History
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\History\Low
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\History\Low\History.IE5
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\IECompatCache
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\IECompatCache\Low
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\IECompatUaCache
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\IECompatUaCache\Low
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\INetCache
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\INetCookies
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\INetCookies\DNTException
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\INetCookies\DNTException\Low
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\INetCookies\Low
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\INetCookies\PrivacIE
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\INetCookies\PrivacIE\Low
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\PPBCompatCache
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\PPBCompatCache\Low
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\PPBCompatUaCache
    • %USERPROFILE%\AppData\Local\Microsoft\Windows\PPBCompatUaCache\Low
    • %USERPROFILE%\AppData\Local\Microsoft\WindowsApps
    • %USERPROFILE%\AppData\Local\Packages
    • %USERPROFILE%\AppData\Local\Packages\VirtualizationTests.Main_8wekyb3d8bbwe\LocalCache
    • %USERPROFILE%\AppData\Local\Publisher
    • %USERPROFILE%\AppData\Local\Publisher\8wekyb3d8bbwe
    • %USERPROFILE%\AppData\Local\Temp
    • %USERPROFILE%\AppData\LocalLow
    • %USERPROFILE%\AppData\LocalLow\Microsoft
    • %USERPROFILE%\AppData\LocalLow\Microsoft\Internet Explorer
    • %USERPROFILE%\AppData\LocalLow\Microsoft\Internet Explorer\DOMStore
    • %USERPROFILE%\AppData\LocalLow\Microsoft\Internet Explorer\EdpDomStore
    • %USERPROFILE%\AppData\LocalLow\Microsoft\Internet Explorer\EmieSiteList
    • %USERPROFILE%\AppData\LocalLow\Microsoft\Internet Explorer\EmieUserList
    • %USERPROFILE%\AppData\LocalLow\Microsoft\Internet Explorer\IEFlipAheadCache
    • %USERPROFILE%\AppData\Roaming
    • %USERPROFILE%\AppData\Roaming\Microsoft
    • %USERPROFILE%\AppData\Roaming\Microsoft\Crypto
    • %USERPROFILE%\AppData\Roaming\Microsoft\Internet Explorer
    • %USERPROFILE%\AppData\Roaming\Microsoft\Internet Explorer\UserData
    • %USERPROFILE%\AppData\Roaming\Microsoft\Internet Explorer\UserData\Low
    • %USERPROFILE%\AppData\Roaming\Microsoft\Spelling
    • %USERPROFILE%\AppData\Roaming\Microsoft\SystemCertificates
    • %USERPROFILE%\AppData\Roaming\Microsoft\Windows
    • %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Libraries
    • %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Recent

    Sie können den PowerShell-Befehl "Testpfad " verwenden, um diese Überprüfung durchzuführen. Wenn Sie nicht über die Leseberechtigung für einen bestimmten Ordner verfügen, bitten Sie jemanden, der über die Berechtigung "Vollzugriff " für den Ordner verfügt, Ihnen die Leseberechtigung zu erteilen.

  4. Überprüfen Sie, ob alle in Schritt 3 aufgeführten Ordner so geändert werden, dass sie als Analysepunkte funktionieren. Wenn eines der Ordner analysepunkte ist, wenden Sie sich an Microsoft-Support.

  5. Suchen Sie nach Dateien mit demselben Namen wie ein erforderlicher Systemordner im AppData-Ordner . Beispielsweise hat eine Datei mit dem Namen "Bibliotheken" im Pfad " %AppData%\Microsoft\Windows\Libraries" denselben Namen wie ein Ordner mit demselben Pfad. Führen Sie für jeden Ordner, der in Schritt 3 aufgeführt ist, den folgenden PowerShell-Befehl aus:

    Test-Path -Path <directory name, such as $env:USERPROFILE\AppData\Local\Temp>  -PathType Leaf
    

    Wenn der Befehl "True" zurückgibt, entfernen Sie die Datei, und erstellen Sie dann einen Ordner mit demselben Namen wie der vollständige Pfad für den Systemordner.

  6. Überprüfen Sie, ob das SYSTEM-Konto und die Gruppe "Administratoren" über die Berechtigung "Vollzugriff " für alle Verzeichnisse verfügen, die in Schritt 3 aufgeführt sind.

    1. Führen Sie die folgenden PowerShell-Befehle für jeden Ordner aus:

      ((Get-Acl (Join-Path $env:USERPROFILE "<directory name that starts with AppData, such as AppData\Local>")).Access | ?{$_.IdentityReference -eq "NT AUTHORITY\SYSTEM" -and $_.FileSystemRights -eq "FullControl"} | measure).Count -eq 1
      ((Get-Acl (Join-Path $env:USERPROFILE "<directory name that starts with AppData, such as AppData\Local>")).Access | ?{$_.IdentityReference -eq "BUILTIN\Administrators" -and $_.FileSystemRights -eq "FullControl"} | measure).Count -eq 1
      
    2. Wenn ein Befehl "False" zurückgibt, bitten Sie jemanden, der über die Berechtigung "Vollzugriff" für den Ordner verfügt, die Berechtigung "Vollzugriff" für das entsprechende Konto zu erteilen.

  7. Überprüfen Sie, ob Sie über die SYSAPPID-Berechtigung für den Microsoft Teams-Installationsspeicherort verfügen. Führen Sie den folgenden PowerShell-Befehl aus:

    Get-AppxPackage MSTeams | %{$_.InstallLocation+" - "+(((Get-Acl $_.InstallLocation).sddl -split "\(" | ?{$_ -match "WIN:/\/\SYSAPPID"} | Measure).count -eq 1)}
    

    Wenn der Befehl "False" zurückgibt, bitten Sie ein Mitglied der lokalen Gruppe "Administratoren", Ihr Benutzerprofil auf dem Computer zu löschen. Melden Sie sich dann mit Ihrem Benutzerkonto an, um das Benutzerprofil erneut zu erstellen.

  8. Überprüfen Sie die Richtlinieneinstellung "AllowAllTrustedApps ":

    1. Führen Sie in einem Eingabeaufforderungsfenster den winver Befehl aus.

    2. Vergleichen Sie Ihre Windows-Version und Buildnummer in den Ergebnissen mit den folgenden Versionen von Windows 11 und Windows 10:

      • Windows 11, Version 21H2, Betriebssystembuild 22000.2777
      • Windows 11, Version 22H2, Betriebssystembuild 22621.2506
      • Windows 10, Version 21H2, Betriebssystembuild 19044.4046
      • Windows 10, Version 22H2, Betriebssystembuild 19045.3636
    3. Wenn Ihre Windows-Version und Buildnummer vor denen in der Liste liegen, öffnen Sie den Registrierungs-Editor, und suchen Sie dann den Registrierungseintrag "AllowAllTrustedApps " unter einem der folgenden Unterschlüssel:

      • Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock
      • Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Appx
    4. Überprüfen Sie den Wert von AllowAllTrustedApps. Wenn der Wert 0 ist, ist die Richtlinie deaktiviert. Ändern Sie sie in 1 , um die Richtlinie zu aktivieren, und versuchen Sie dann erneut, neue Teams zu starten.

      Hinweis: Um neue Teams zu starten, ohne die AllowAllTrustedApps-Richtlinie zu aktivieren, müssen Sie eine der Versionen von Windows ausführen, die in Schritt 5b aufgeführt sind.

  9. Wenn das Problem weiterhin besteht, aktualisieren Sie das System auf Windows 11, Version 22H2, Betriebssystembuild 22621.2506 oder eine höhere Version.