排查 AppX、MSIX 或 Microsoft 存储应用程序的问题

Windows 收件箱应用程序(AppX)缺失或无法正常工作

许多 Windows 收件箱应用程序已转换为 AppX 包。 AppX 包依赖于 AppReadiness 服务,该服务代表用户在登录过程中注册这些类型的应用程序。 由于 VDI 用户的登录在技术上 是每次登录的新 登录,因此 AppReadiness 服务没有正确设置收件箱应用程序所需的所有信息,尤其是在映像或功能更新之间升级这些应用程序时。

安装或升级 FSLogix 到最新版本

FSLogix 2210 (2.9.8361.52326)和更高版本提供新功能,以便更好地与 Windows 收件箱应用程序兼容。 收件箱应用程序是指内置并预安装到 Windows 的应用程序。 自定义、3rd party 或 Microsoft 存储应用程序 被视为收件箱应用程序。

注意

FSLogix 不支持或保证自定义、3rd party 或 Microsoft 存储应用程序的兼容性。

使用 PowerShell 注册 AppX 应用程序

  1. 以本地管理员或具有管理权限的用户身份登录到 计算机或虚拟机。

  2. 选择“开始”直接键入powershell开始”菜单。

  3. 从右侧的“开始”菜单选择“ 以管理员身份运行”。

    powershell start

    图 1: PowerShell 从“开始”菜单以管理员身份运行

  4. 复制 PowerShell 代码并将其粘贴 PowerShell 窗口中。

    • 查看注册表位置中的$AllUserInboxAppsKey$AllUserAppsKey应用程序列表。

      
      $AllUserInboxAppsKey = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications"
      $AllUserApps = Get-ChildItem -Path $AllUserInboxAppsKey
      ForEach($Key in $AllUserApps) {
          Add-AppxPackage -DisableDevelopmentMode -Register (Get-ItemProperty -Path $Key.PsPath).Path
      }
      
      $AllUserAppsKey = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Applications"
      $AllUserApps = Get-ChildItem -Path $AllUserAppsKey
      ForEach($Key in $AllUserApps) {
          Add-AppxPackage -DisableDevelopmentMode -Register (Get-ItemProperty -Path $Key.PsPath).Path
      }
      
      
    • 如果粘贴到 Windows PowerShell 时出现警告对话框, 请选择 Paste anyway

      powershell 警告

      图 2: PowerShell 粘贴警告

使用或切换到新的 Microsoft Teams 时,用户报告应用程序缺失或加载时间很长

新的Microsoft Teams 是一个 MSIX 应用程序,必须为所有用户正确安装。 能够切换到新Microsoft Teams 的用户可以在其用户上下文下安装应用程序,而不是所有用户。 登录不同的虚拟机时,不会为用户保留以这种方式安装的 MSIX 应用程序,并且应用程序可能似乎缺失。 此外,FSLogix 会清理在注销期间不用于漫游的文件夹。

为所有用户或“系统范围”安装新的 Microsoft Teams

在允许用户切换其 Teams 体验之前,请查看 升级到新的 Teams for Virtualized Desktop Infrastructure (VDI) 一文。

安装或升级到 FSLogix 2210 修补程序 4 (2.9.8884.27471)

FSLogix 2210 修补程序 4(2.9.8884.27471) 或更高版本为虚拟桌面中的新 Teams 提供特殊处理。

注意

  • 通过家族名称注册新 Teams 时,应用程序将在 FSLogix 使用的AppxManifest.xml文件外进行处理,并将为用户登录添加额外的时间。
    • [19:29:03.845][tid:000008d0.00001c64][INFO] Installed MSTeams in 907ms

登录新会话时,我的应用程序数据不会漫游或缺失

MSIX 应用程序将用户数据存储在 %LocalAppData%\Packages\<package-name>\. 作为 2210(2.9.8361.52326)版本的一部分,我们引入了 InstallAppXPackages 此功能。 根据 UWP 参考 API,用户配置文件中有一些文件夹未用于漫游。 与 UWP 团队协作,FSLogix 在用户注销期间放弃这些文件夹的内容。

不可漫游的文件夹(未备份)

  • AppData\Local\Packages\*\AC
  • AppData\Local\Packages\*\SystemAppData
  • AppData\Local\Packages\*\LocalCache
  • AppData\Local\Packages\*\TempState
  • AppData\Local\Packages\*\AppData

重要

无论任何redirections.xml配置如何,这些文件夹的内容都会在注销时删除。

我已禁用 InstallAppXPackages,但某些 AppX 应用程序仍已安装或可供用户使用

此设置 InstallAppXPackages 不是 Windows 中 AppX 应用程序行为的全局配置。 此设置 影响 FSLogix 尝试保留这些应用程序的用户体验的方式。 AppX 应用程序由 Windows 和 AppReadiness 服务管理。 FSLogix 不提供完整的 AppX 应用程序管理功能。