Remover todos os aplicativos padrão, exceto alguns Usando o Powershell - Erro: Falha na implantação com HRESULT: 0x80073CFA

0

Eu usei o script do Windows 10: Remova todos os aplicativos padrão, exceto os especificados .

Get-AppxPackage -AllUsers | where-object {$_.name –notlike "*store*","*windowscalculator*","*people*"} | Remove-AppxPackage

Falha na implantação de erros com HRESULT: 0x80073CFA.

Remove-AppxPackage : Deployment failed with HRESULT: 0x80073CFA, Removal failed. Please contact your software vendor. (Exception from HRESULT: 0x80073CFA)
error 0x80070032: AppX Deployment Remove operation on package 1527c705-839a-4832-9118-54d4Bd6a0c89_10.0.17134.1_neutral_neutral_cw5n1h2txyewy from:
C:\Windows\SystemApps\Microsoft.Windows.FilePicker_cw5n1h2txyewy failed. This app is part of Windows and cannot be uninstalled on a per-user basis. An administrator can attempt to remove the
app from the computer using Turn Windows Features on or off. However, it may not be possible to uninstall the app.
NOTE: For additional information, look for [ActivityId] 8c1923d8-2299-0001-fb83-198c9922d401 in the Event Log or use the command line Get-AppxLog -ActivityID
8c1923d8-2299-0001-fb83-198c9922d401
At line:1 char:106
+ ... like "*store*","*windowscalculator*","*people*"} | Remove-AppxPackage
+                                                        ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (1527c705-839a-4...l_cw5n1h2txyewy:String) [Remove-AppxPackage], IOException
    + FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.RemoveAppxPackageCommand

Remove-AppxPackage : Deployment failed with HRESULT: 0x80073CFA, Removal failed. Please contact your software vendor. (Exception from HRESULT: 0x80073CFA)
error 0x80070032: AppX Deployment Remove operation on package c5e2524a-ea46-4f67-841f-6a9465d9d515_10.0.17134.1_neutral_neutral_cw5n1h2txyewy from:
C:\Windows\SystemApps\Microsoft.Windows.FileExplorer_cw5n1h2txyewy failed. This app is part of Windows and cannot be uninstalled on a per-user basis. An administrator can attempt to remove
the app from the computer using Turn Windows Features on or off. However, it may not be possible to uninstall the app.
NOTE: For additional information, look for [ActivityId] 8c1923d8-2299-0000-8397-198c9922d401 in the Event Log or use the command line Get-AppxLog -ActivityID
8c1923d8-2299-0000-8397-198c9922d401
At line:1 char:106
+ ... like "*store*","*windowscalculator*","*people*"} | Remove-AppxPackage
+                                                        ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (c5e2524a-ea46-4...l_cw5n1h2txyewy:String) [Remove-AppxPackage], IOException
    + FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.RemoveAppxPackageCommand

Remove-AppxPackage : Deployment failed with HRESULT: 0x80073CFA, Removal failed. Please contact your software vendor. (Exception from HRESULT: 0x80073CFA)
error 0x80070032: AppX Deployment Remove operation on package E2A4F912-2574-4A75-9BB0-0D023378592B_10.0.17134.1_neutral_neutral_cw5n1h2txyewy from:
C:\Windows\SystemApps\Microsoft.Windows.AppResolverUX_cw5n1h2txyewy failed. This app is part of Windows and cannot be uninstalled on a per-user basis. An administrator can attempt to remove
the app from the computer using Turn Windows Features on or off. However, it may not be possible to uninstall the app.
NOTE: For additional information, look for [ActivityId] 8c1923d8-2299-0000-8c97-198c9922d401 in the Event Log or use the command line Get-AppxLog -ActivityID
8c1923d8-2299-0000-8c97-198c9922d401
At line:1 char:106
+ ... like "*store*","*windowscalculator*","*people*"} | Remove-AppxPackage
+                                                        ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (E2A4F912-2574-4...l_cw5n1h2txyewy:String) [Remove-AppxPackage], IOException
    + FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.RemoveAppxPackageCommand

Solução encontrada aqui

Meu problema é, se o MS não quer que eu delete, então eu não quero excluir. Mas, se ninguém tem alguma objeção, então eu quero excluir. Becasue, quem sabe quantas coisas vão quebrar.

Portanto, não quero alterar o banco de dados nem usar nenhum hack. Eu quero um script (espero que um forro um), que irá excluir com segurança o máximo de bloatware (Jogos, Objeto 3D .., sketch , XBox etc.) quanto possível.

Se a remoção der um erro, não se preocupe! pule e vá para o próximo aplicativo e tente removê-lo.

    
por blueray 23.07.2018 / 18:55

1 resposta

1

Lembre-se, sempre há maneiras mais elegantes de fazer as coisas, mas isso é apenas uma opção.

Você pode coletar todos os aplicativos e compará-los com a lista de permissões do aplicativo em um loop.

Algo como:

"Uninstalling BlackListed apps"
$apps = @(
    # Whitelist Windows 10 apps
    "Microsoft.BingWeather"
    "Microsoft.MicrosoftOfficeHub"
    "Microsoft.Office.OneNote"
    "Microsoft.SkypeApp"
    "Microsoft.WindowsAlarms"
    "Microsoft.WindowsCalculator"
    "Microsoft.WindowsCamera"
    "microsoft.windowscommunicationsapps"
    "Microsoft.WindowsMaps"
    "Microsoft.GetHelp"
    "Microsoft.Messaging"
)

$RemoveAppPkgs = (Get-AppxPackage -AllUsers).Name
'TotalApps: ' + $RemoveAppPkgs.Count
'TotalWhiteListedApps: ' + $apps.Count
'TotalBlackListeedApps: ' + ($RemoveAppPkgs.Count - $apps.Count)

ForEach($TargetApp in $RemoveAppPkgs)
{
    If($apps -notcontains $TargetApp)
    {
        Write-Output "Trying to remove $TargetApp"
    }
}

Saída:

Uninstalling BlackListed apps
TotalApps: 141
TotalWhiteListedApps: 11
TotalBlackListeedApps: 130
Trying to remove Windows.PrintDialog
Trying to remove Microsoft.NET.Native.Framework.1.0
Trying to remove Microsoft.NET.Native.Framework.1.0
Trying to remove Microsoft.NET.Native.Framework.1.1
Trying to remove Microsoft.NET.Native.Framework.1.1
Trying to remove Microsoft.NET.Native.Framework.1.6
Trying to remove Microsoft.NET.Native.Framework.1.6
Trying to remove Microsoft.NET.Native.Runtime.1.0
Trying to remove Microsoft.NET.Native.Runtime.1.0
Trying to remove Microsoft.NET.Native.Runtime.1.1
Trying to remove Microsoft.NET.Native.Runtime.1.1
Trying to remove Microsoft.NET.Native.Runtime.1.6
Trying to remove Microsoft.NET.Native.Runtime.1.6
Trying to remove Microsoft.VCLibs.120.00
Trying to remove Microsoft.VCLibs.120.00
...


Conforme observado no ponteiro que você referencia, existem pacotes que você simplesmente não pode desinstalar:

# apps which cannot be removed using Remove-AppxPackage
#"Microsoft.BioEnrollment"
#"Microsoft.MicrosoftEdge"
#"Microsoft.Windows.Cortana"
#"Microsoft.WindowsFeedback"
#"Microsoft.XboxGameCallableUI"
#"Microsoft.XboxIdentityProvider"
#"Windows.ContactSupport"

Se houver outras pessoas com esse problema, você só precisará capturar e pular as mesmas (usando if / then ou um bloco try / catch).

* Atualização de acordo com a solicitação do OP * Basta adicionar o código de seu link de postagem para que a remoção ocorra.

ForEach($TargetApp in $RemoveAppPkgs)
{
    If($apps -notcontains $TargetApp)
    {
        "Trying to remove $TargetApp"

        Get-AppxPackage -Name $TargetApp -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue

        Get-AppXProvisionedPackage -Online |
            Where-Object DisplayName -EQ $TargetApp |
            Remove-AppxProvisionedPackage -Online
    }
}

Ou adicione os aplicativos que você não pode remover para a lista de permissões e não deverá receber erros para lidar.

No entanto, sempre que você estiver fazendo algo destrutivo como este, você deve ter tratamento de erros. Eu também sugiro que você use o switch -whatif como uma precaução sobre a remoção de coisas antes de fazer isso de verdade. Só para ter certeza de que você está realmente recebendo o que você espera.

Quanto ao exemplo try / catch. Se você estiver no PowerShell_ISE, basta pressionar CRTL + J para acessar a lista de snippets e selecionar um modelo try / catch para usar.

    
por 24.07.2018 / 07:07

Tags