多次将多语言模块合并到同一个包中

如果模块支持多种语言,则可以多次将其合并到同一 Windows Installer 数据库中,但请确保每次合并都使用不同的语言。 在每次合并之前,请从模块请求不同的语言。 然后,生成的 .msi 数据库在 ModuleSignature 表中针对每次模块合并添加一条记录。 在语言之间共享的组件在 Component 表中仅存在一次,但与 ModuleComponents 表中的每种语言相关联。

将模块的多种语言合并到同一个包中时,每个合并都必须满足与单语言模块相同的代码页限制。 模块不能在不同的代码页中包含字符串。

将模块多次合并到单个 .msi 文件中时,可能需要修改 File 表中文件的顺序,以便在安装中直接使用模块中的现有 .cab。 File 表中文件的顺序必须与 .cab 中的文件顺序一致。 将模块多次合并到安装数据库中时,可能会修改序列,因为语言之间共享的文件可能已存在于先前合并的模块中,并且它们具有不同的相对序列号。