我确实不知道如何更好地表述这个标题,但我想要做的事情相当简单。
我想安装《帝国时代 II》。它将自身安装到一个文件夹中,并在注册表中设置其安装位置。
然后我想安装它的第二个副本,以及一些名为 Voobly 的软件。Voobly 检查注册表以查看 AoE2 安装文件夹的位置,因此我无法将其指向游戏的其他副本。
然后,我想安装第三个副本,其中应用了一些不同的模块和补丁,但这些模块的大多数安装程序再次使用注册表来检查游戏的安装位置。
我认为最明显的解决方法是为每个安装设置“容器”,以将它们与主注册表和彼此隔离。一个只包含 AoE2,一个包含 AoE2 和 Voobly,一个包含 AoE2 和所有模组。
显然,这可以通过一套虚拟机以可怕的方式实现,但那太愚蠢了。我认为必须有一种方法可以将应用程序及其相关数据和库放在一个独立的单元中。
我尝试过 Docker,但它显然是为比我正在做的事情复杂得多的用途而设计的,而且看起来也被设计成可以集成到使用它的任何软件的源代码中。我也绝对不知道我正在用它做什么。当我尝试使用 Windows 映像执行某些操作时,它最终将 4gb 系统映像下载到某个地方,现在我找不到它了。对于 200MB 的游戏来说,拥有完整的 4gb 映像似乎有点过分,我想必须有一个更简单的解决方案。