Windows 在MSI中多次使用同一合并模块的正确方法是什么?

Windows 在MSI中多次使用同一合并模块的正确方法是什么?,windows,windows-installer,installation,merge-module,Windows,Windows Installer,Installation,Merge Module,我正在创建一个windows installer脚本,我有两个功能要安装在它们自己的文件夹中 我想对这两个文件夹执行一个合并模块。但是,Windows Installer只允许合并模块的一个副本,因此我只能为应用程序文件夹中的一个副本安装它 是否有可能做到这一点,如果没有,是否有解决办法 谢谢 合并模块很麻烦,最好使用作为单独MSI文件提供的先决条件。您所指的合并模块是什么?合并模块不能两次导入到单个MSI中 更好的方法是将合并模块组件安装到一个共享文件夹中,您的两个组件都将从那里使用它 另一个

我正在创建一个windows installer脚本,我有两个功能要安装在它们自己的文件夹中

我想对这两个文件夹执行一个合并模块。但是,Windows Installer只允许合并模块的一个副本,因此我只能为应用程序文件夹中的一个副本安装它

是否有可能做到这一点,如果没有,是否有解决办法


谢谢

合并模块很麻烦,最好使用作为单独MSI文件提供的先决条件。您所指的合并模块是什么?

合并模块不能两次导入到单个MSI中

更好的方法是将合并模块组件安装到一个共享文件夹中,您的两个组件都将从那里使用它


另一个选项是添加
CopyFile
元素,并将合并模块安装的所有内容复制到第二个组件的文件夹中。但我建议使用共享文件夹。为什么需要复制文件?更新后,共享组件的版本可能会有所不同,这可能会给您带来麻烦。

合并模块允许提供单个MSI来安装产品。如果先决条件在单独的MSI中,您需要使用引导程序,并且您的安装将停止为单个安装传输。我需要副本,因为每个功能(套件的应用程序)都位于各自的文件夹中,并且每个功能都需要合并模块文件。这些应用程序是.NET应用程序。我正在尝试从合并模块中提取文件,并在安装程序中包含两次(每个应用程序文件夹都有一个副本)。让我们看看这是怎么回事…我在.NET方面没有经验…但我为Win32编程已经很长时间了。我不明白为什么这些DLL不能由一个文件夹中的两个应用程序(一个套件)共享。DLL的全部意义在于共享代码,而不是复制代码。(是的,我知道DLL地狱,但在这种情况下,您控制所有三个组件,我看不出您需要两个副本的原因。)