如何使用主包的虚拟化文件系统/注册表使可选包中的应用程序运行?

Posted

技术标签:

【中文标题】如何使用主包的虚拟化文件系统/注册表使可选包中的应用程序运行?【英文标题】:How do I make apps in my optional package run using the virtualized file system/registry of the main package? 【发布时间】:2021-12-06 07:05:53 【问题描述】:

我创建了一个“相关集”(使用 MSIX 语言),由一个主包和一个可选包组成。这两个包中的每一个都包含独立的应用程序。当我运行作为可选包一部分的应用程序时,我发现它们在自己的虚拟化文件系统中运行,与主包的虚拟化文件系统分开。

使用“Invoke-CommandInDesktopPackage”Powershell 命令,我发现可选包中的应用程序应该能够“看到”主包的虚拟化文件系统的内容,就像虚拟化一样(通过浏览到下面的相关文件夹C:\Program Files\WindowsApps);但他们似乎也有自己的 VFS。

我可以强制它们在与主包的应用使用相同的 VFS 中运行,以便它们具有相同的文件系统视图和相同的注册表视图吗?

【问题讨论】:

这个问题正在meta讨论。 【参考方案1】:

根据微软的说法,它们应该在同一个容器中运行。以下是“Optional packages and related set authoring”文章的摘录:

可选包和相关集都在主应用的 MSIX 容器内运行。

我最近没有构建可选包,但有机会我会尝试一下。可能是哪个操作系统的错误破坏了这个共享容器(微软在发布修改包时也有类似的错误)。

您在哪个 Windows 版本上进行测试?

【讨论】:

以上是关于如何使用主包的虚拟化文件系统/注册表使可选包中的应用程序运行?的主要内容,如果未能解决你的问题,请参考以下文章

如何访问不属于iOS主包的文件

如何“运行”主包中包含多个文件的项目?

主包中的 Realm realmWithPath 方法在 iOS 上崩溃

我可以使用核心数据读取和写入主包中的数据库吗?

从主包中获取目录的内容

无法从主包中按名称加载 Nib 文件