打开后,Windows应用商店和所有应用程序立即崩溃

Cha*_*eak 2 windows windows-store-apps

我的计算机遇到这种情况,每当我打开Windows应用商店应用程序或Windows应用商店本身时,启动屏幕会出现几秒钟然后崩溃.我无法使用任何Windows应用商店应用.此外,我尝试了许多不同的建议解决方案,我在互联网上找不到.

我有条不紊地跟踪每个错误日志,最后能够解决这个问题.

基于我在互联网上看到的所有投诉,这个问题似乎很普遍.

Cha*_*eak 7

这必须是我曾经遇到的最烦人的问题之一.没有一个"简单"的解决方案对我有用,但我挖得很深,最后能够解决这个问题.这就是我做到的.(注意:一如既往,我不负责您遵循我的建议可能造成的任何损害.)

  1. 通过点击"开始"按钮,键入"Powershell",然后右键单击"Windows PowerShell"并单击"以管理员身份运行",以管理员身份运行Powershell.
  2. 尝试通过运行以下两个命令重新安装Windows应用商店应用:

    $manifest = (Get-AppxPackage Microsoft.WindowsStore).InstallLocation + '\AppxManifest.xml'
    Add-AppxPackage -DisableDevelopmentMode -Register $manifest
    
    Run Code Online (Sandbox Code Playgroud)
  3. 如果您没有收到任何错误,请跳至步骤14(幸运的是!)

  4. 如果确实收到错误,请显示错误日志.首先,您必须找到错误日志的代码.

    Add-AppxPackage : Deployment failed with HRESULT: 0x80073CF6, Package could not be registered. (Exception from HRESULT: 0x80073CF6)
    NOTE: For additional information, look for [ActivityId] aaa7357d-bec0-0001-5f4f-a8aac0bed101 in the Event Log or use the command line Get-AppxLog -ActivityID aaa7357d-bec0-0001-5f4f-a8aac0bed101
    At line:1 char:1
    + Add-AppxPackage -register "C:\Program Files\WindowsApps\Microsoft.Win ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     + CategoryInfo : WriteError: (C:\Program File...ppxManifest.xml:String) [Add-AppxPackage], IOException
     + FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.AddAppxPackageCommand
    
    Run Code Online (Sandbox Code Playgroud)
  5. 查看它所说的"...使用命令行Get-AppxLog ..."然后将Get-AppxLog中的所有内容复制并粘贴到行尾,如下所示:

    Get-AppxLog -ActivityID aaa7357d-bec0-0001-5f4f-a8aac0bed101
    
    Run Code Online (Sandbox Code Playgroud)
  6. 你会看到很多输出.最后,您应该看到命令失败的确切原因.就我而言,它看起来像这样:

    error 0x80070002: Reading manifest from location: 
     C:\ProgramData\Microsoft\Windows\AppRepository\Microsoft.WindowsStore_11602.1.26.0_neutral_split.scale-125_8wekyb3d8bbwe.xml failed with error: The system cannot find the file specified.
    
    Run Code Online (Sandbox Code Playgroud)
  7. 因此,它无法找到所需的XML文件.在这种情况下,我们可以通过复制我们所拥有的文件来代替丢失的文件来"欺骗".首先,我们必须找到一个我们可以使用的适当文件.为此,请转到存储所有XML文件的目录,如下所示:

    cd C:\ProgramData\Microsoft\Windows\AppRepository
    
    Run Code Online (Sandbox Code Playgroud)
  8. 接下来,列出以Microsoft.WindowsStore开头的所有文件,如下所示:

    dir Microsoft.WindowsStore*
    
    Run Code Online (Sandbox Code Playgroud)

    结果如下:

    Mode LastWriteTime Length Name 
    ---- ------------- ------ ---- 
    -a---- 4/30/2016 10:09 AM 31341 Microsoft.WindowsStore_11602.1.26.0_x64__8wekyb3d8bbwe.xml 
    -a---- 4/30/2016 10:09 AM 28503 Microsoft.WindowsStore_11602.1.264.0_neutral_~_8wekyb3d8bbwe.xml 
    -a---- 1/29/2016 8:28 PM 28502 Microsoft.WindowsStore_2015.2524.4.0_neutral_~_8wekyb3d8bbwe.xml 
    -a---- 1/13/2016 9:11 AM 28065 Microsoft.WindowsStore_2015.83.24.0_neutral_~_8wekyb3d8bbwe.xml 
    -a---- 2/13/2016 11:43 PM 28283 Microsoft.WindowsStore_2016.272.4.0_neutral_~_8wekyb3d8bbwe.xml 
    -a---- 3/10/2016 9:04 AM 28503 Microsoft.WindowsStore_2016.2913.4.0_neutral_~_8wekyb3d8bbwe.xml
    
    Run Code Online (Sandbox Code Playgroud)
  9. 就我而言,我有另一个文件非常接近所需的文件.它有相同的版本号11602.1.26.0作为缺少的文件,所以我只是复制了那个.

    cp Microsoft.WindowsStore_11602.1.26.0_x64__8wekyb3d8bbwe.xml C:\ProgramData\Microsoft\Windows\AppRepository\Microsoft.WindowsStore_11602.1.26.0_neutral_split.scale-125_8wekyb3d8bbwe.xml
    
    Run Code Online (Sandbox Code Playgroud)
  10. 在这里,我遇到了一个非常恼人的权限错误,这导致我又陷入了另一个兔子洞.当我试图复制该文件时,我收到此错误:

    cp : Access to the path 'C:\ProgramData\Microsoft\Windows\AppRepository\Microsoft.WindowsStore_11602.1.26.0_neutral_split.language-ja_8wekyb3d8bbwe.xml' is denied.
    At line:1 char:1
    + cp Microsoft.WindowsStore_11602.1.26.0_x64__8wekyb3d8bbwe.xml C:\Prog ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     + CategoryInfo : PermissionDenied: (C:\ProgramData\...ekyb3d8bbwe.xml:FileInfo) [Copy-Item], UnauthorizedAccessException
     + FullyQualifiedErrorId : CopyFileInfoItemUnauthorizedAccessError,Microsoft.PowerShell.Commands.CopyItemCommand
    
    Run Code Online (Sandbox Code Playgroud)
  11. 我不得不完全控制AppRepository目录,以便能够将文件写入其中."文件属性"对话框中的标准"安全"选项卡对我不起作用,因此我安装了一个PowerShell cmdlet,允许您从PowerShell内部更改文件权限.请按照以下说明安装cmdlet.

  12. 现在您已拥有AppRepository目录的权限,您可以再次尝试复制命令:

    cp Microsoft.WindowsStore_11602.1.26.0_x64__8wekyb3d8bbwe.xml C:\ProgramData\Microsoft\Windows\AppRepository\Microsoft.WindowsStore_11602.1.26.0_neutral_split.scale-125_8wekyb3d8bbwe.xml
    
    Run Code Online (Sandbox Code Playgroud)
  13. 继续在步骤2中(只在第二个命令),每次给你一个错误的时间运行命令,运行Get-AppxLog,找到失踪的XML文件的名称,以及现有的文件复制到丢失的文件名(第12步, 以上).最终,您将停止丢失文件错误.在我的情况下,我开始得到不同的错误,如下所示:

    error 0x80070005: While processing the request, the system failed to register the windows.stateExtension extension due to the following error: Access is denied. 
    . 
    6/5/2016 7:05:32 PM 316 error 0x80070005: Cannot register the request because the following error was encountered during the registration of the windows.stateExtension extension: Access is denied.
    
    Run Code Online (Sandbox Code Playgroud)
  14. 你不会相信这一点,但我通过关闭Windows防火墙解决了这个问题.要执行此操作,请单击"开始"按钮,然后键入"防火墙",然后单击"Windows防火墙".在接下来显示的窗口中,单击"打开或关闭Windows防火墙",然后为所有网络将其关闭. 在此输入图像描述

  15. 然后我终于能够成功完成命令:

    Add-AppxPackage -DisableDevelopmentMode -Register $manifest
    
    Run Code Online (Sandbox Code Playgroud)
  16. 我通过点击开始按钮,键入"Store"并单击"Store"来检查Windows Store是否正常工作.它打开正常,没有崩溃.万岁!

  17. 最后,您必须修复所有剩余的应用.您可以尝试使用此命令自动重新注册所有应用程序.运行此命令时,请确保已关闭Windows应用商店.

    Get-AppxPackage -allusers | foreach {Add-AppxPackage -register "$($_.InstallLocation)\appxmanifest.xml" -DisableDevelopmentMode}
    
    Run Code Online (Sandbox Code Playgroud)
  18. 但是,在我的情况下,许多应用程序仍然失败,主要是由于丢失文件.由于我注意到文件名遵循了模式,因此我能够编写这个可怕的Powershell命令来创建所有丢失的文件:

    Get-AppxPackage -allusers | foreach {$scr = "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_$($_.Architecture)__$($_.PublisherId).xml"; if (Test-Path $scr) { cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_split.language-ja_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_ja-jp_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_zh-cn_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_resources.language-zh-hans_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_resources.scale-125_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_resources.scale-140_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_resources.scale-150_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_resources.language-ja_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_split.language-zh-hans_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_split.scale-100_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_split.scale-125_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_split.scale-150_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_split.scale-140_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_split.scale-200_$($_.PublisherId).xml"; cp $scr "c:\ProgramData\Microsoft\Windows\AppRepository\$($_.Name)_$($_.Version)_neutral_split.scale-180_$($_.PublisherId).xml"; } }
    
    Run Code Online (Sandbox Code Playgroud)
  19. 然后我重新运行第17步,大部分应用程序都成功了.

  20. 最后,打开Windows应用商店,单击应用,单击下载图标,然后检查更新.安装所有可用的更新.

  21. 不要忘记重新启用Windows防火墙!

如果您有任何疑问,请随时在下面发表评论!如果这确实有帮助,请告诉我.与往常一样,对于您遵循我的建议可能造成的任何损害,我概不负责.

参考