【问题标题】:is it possible to create a multilanguage installer using WIX?是否可以使用 WIX 创建多语言安装程序?
【发布时间】:2010-02-26 09:35:45
【问题描述】:

是否可以使用 WIX 创建多语言安装程序?

【问题讨论】:

  • 如果是这样,请使用此链接tramontana.co.hu/wix/lesson2.php#2.6
  • 是本地化但多文化,因此用户可以选择适当的语言。在开始安装过程之前从组合框。
  • 我认为这一步是在 msi 之外的。 WIX 是一个创建 Microsoft Installer 数据库的工具,它是 msis。由于您应该在运行 msi 之前选择语言,因此无法使用 WIX 完成。您可以为此使用 install shield 或自己执行此步骤。

标签: c# .net installation wix


【解决方案1】:

如果您创建嵌入式转换,则无需引导程序即可执行此操作,MSI 安装程序将根据您的系统区域设置自动应用其中一个。

有关完整的详细信息和脚本,请点击此链接:

http://www.geektieguy.com/2010/03/13/create-a-multi-lingual-multi-language-msi-using-wix-and-custom-build-scripts/

他们说,这是 Microsoft Installer 的未记录功能,所以请小心使用它。

【讨论】:

  • 这对我有用(windows 7.0 sdk vbs),以及The developer's guide to wix 3.6 中的以下步骤,以确保我的代码页和产品语言首先是正确的。
【解决方案2】:

这可能并非不可能,但使用 Wix 创作 MSI 可能非常非常困难,其中 UI 语言在运行时确定。 Wix 是关于构建时本地化的全部内容,也就是说,您可以从相同的源文件轻松创建不同的 MSI,每个 MSI 都有自己的 UI 语言。

【讨论】:

  • +1 我所看到的一切都显示在构建时完成了本地化,并输出了单独的本地化 MSI。
  • 但是 MSI 旁边可以有 MST 文件。 MST 文件将 MSI 转换为另一种语言。
  • @Ikaso 确实如此,但我认为它不能解决 OP 的问题,因为您仍然需要 MSI 外部的东西来决定应用哪个 MST。
【解决方案3】:

显然,使用 WIX 可以解决您的问题。您需要做的是创建一个引导加载程序。有一个名为 Setupbld.exe 的工具可以帮助解决这个问题。您可以在John Robbins' Blog 上阅读更多内容。

【讨论】:

    【解决方案4】:

    当然。首先,您的 .msi 必须嵌入所有来自外语 MSI 的转换(请参阅Embedded Transforms)。这可以使用 Microsoft 的 MsiTran.exe 和 WiSubStg.vbs 来完成,在本文其他地方的 GeekTieGuy link 中提到。

    其次,您的 .wxs 文件的 Package element 必须包含 Languages 属性,其中包含您支持的所有语言环境 ID 的逗号分隔列表,例如

    Languages="1033,1031,3082,1036,1040,1041,1042,1043,1046,1049,2052,1028"
    

    现在您可以在外语系统上双击 .msi 并让它自动以正确的语言出现

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-06
      • 1970-01-01
      • 2017-11-25
      • 2013-11-22
      • 2015-01-14
      • 1970-01-01
      相关资源
      最近更新 更多