运行时更改WIX安装程序语言

时间:2014-03-13 14:31:00

标签: localization wix installer windows-installer

没有Setup.exe启动器的多语言MSI包

请使用wix帮我创建没有Setup.exe的多语言MSI包。

我已经为不同语言创建了mst文件并使用EmbedTransform工具嵌入它,但它只适用于命令lint选项,如msiexec / i SampleMulti.msi TRANSFORMS =“:fr-fr.mst”。如果我更改机器的语言并使用msi直接安装,则无效。

我在帖子中跟随了以下链接,但它也没有用 how to create language transformation that will correctly change the ProductLanguage property in Wix

如果我们可以根据下拉菜单和安装程序语言更改选择语言,也可以。

请帮帮我。

3 个答案:

答案 0 :(得分:1)

您可以按照此网站上的说明进行操作:Multi-Language MSI Packages without Setup.exe Launcher

不久描述的步骤:

  • 您创建一个基本的MSI包,其中英语为默认/后备语言
  • 您可以为要包含的其他语言创建转换
  • 您在MSI包中嵌入了这些转换(因此您基本上只有一个 MSI文件)
  • 您调整摘要信息流

使用的脚本来自Windows SDK。使用此方法启动MSI并基于为系统配置的区域选项 UI语言),Windows Installer将以相关语言显示安装(如果包括转换)或英文(如果Windows Installer无法找到任何适当的语言转换)。

我自己使用了5种语言,并且像魅力一样工作。

答案 1 :(得分:0)

启动MSI时必须应用转换,这是底线。机器的语言也不相关 - 如果你有一个单独的exe来启动MSI,那么系统语言将是一种有用的默认语言,但没有什么可以阻止任何人用德语安装英语MSI OS。 Windows如何知道您拥有哪些转换文件,并在安装过程中自动应用它们。

如果您希望用户选择语言,您需要一个在MSI启动命令行中添加相关转换的启动程序,这仍然是正确的。为什么单独的exe是一个大问题?

答案 2 :(得分:0)

请参阅我对is it possible to create a multilanguage installer using WIX?的答案,了解如何创建自动检测MSI。 (我发表评论但我没有特权。)