2

在分配的访问权限(Kiosk 模式)下运行窗口时手动触发应用程序更新不起作用。

我读过其他人面临同样的问题,感觉 Windows Kiosk 模式中存在错误。但也许这种行为有某种原因?

我有一个使用 appinstaller 文件旁加载的应用程序(我的应用程序由一个 uwp 部分和一个通过网桥连接链接的 consol 部分组成)。除了更新部分,该应用程序在 Kiosk 模式下运行良好。如果我启用自动更新并链接到计算机上的特定文件夹,则自动更新将起作用并从特定文件夹更新我的应用程序。但是,这种更新方式需要两次重新启动才能自动更新。我希望能够以某种方式从应用程序本身手动触发更新并立即更新。

我尝试使用以下功能使用 packagemanager 进行更新。这在桌面上运行良好,但如果我在 Kiosk 模式下的帐户中运行它(分配的访问权限),它总是会冻结在蓝屏中。

PackageManager pm = new PackageManager();    
pm.AddPackageByAppInstallerFileAsync(new Uri("C:\\myLocalPath"), AddPackageByAppInstallerOptions.ForceTargetAppShutdown, pm.FindPackageVolume("C:\\"));

我还尝试使用以下命令重新启动应用程序,以触发自动更新,而无需重新启动整个计算机。这也适用于桌面,但如果我在 Kiosk 帐户中,则会在蓝屏中冻结。

AppRestartFailureReason result = await CoreApplication.RequestRestartAsync("Restart");

重新启动整个计算机两次并启用自动更新将毫无问题地更新应用程序。为什么不能使用上述方法之一?这是 Windows 信息亭模式中的错误还是真的有意?

这里也报告了同样的问题:

问题-当-重新启动-应用程序-on-kiosk-mode-windows-10

和这里:

intune-kiosk-blue-screen-spinner-after-uwp-app-res

4

1 回答 1

0

在此处查看我对如何完成这项工作的回答: Microsoft docs 上描述的相同问题

我对整个分配的访问权限和包安装概念不太自信。它目前对我有用,但我的感觉是它不是很稳定。许多不同的方法可以创造几乎相同的东西。问题是结果之间存在差异,具体取决于您到达那里的方式。例如,如果您以不同的方式创建两个被分配的访问帐户,它们的行为就会不同。此外,添加和删除应用程序和帐户也会留下您看不到但可能导致问题的垃圾。至少这是我的感觉。

于 2020-11-20T14:07:23.283 回答