【问题标题】:Setup.exe calling msi based on Regional settingSetup.exe 根据区域设置调用 msi
【发布时间】:2011-09-08 16:39:01
【问题描述】:

环境: 视窗 7 SP1 Visual Studio 2010 终极版 SP1 .NET 4.0

我有一个带有一些先决条件的 Visual Studio 安装项目(Windows Installer 4.5、SQL Server Express 2008...)

我的部署包有一个 setup.exe、app.msi 和带有先决条件的文件夹。

现在我们要本地化 msis。 所以我们会有 app.en.msi 和 app.de.msi

我需要两个部署包吗? 或者我可以有一个智能的 setup.exe,它可以根据区域设置在 app.en.msi 和 app.de.msi 之间进行选择?

【问题讨论】:

    标签: .net visual-studio-2010 c#-4.0 setup-project


    【解决方案1】:

    一般的做法是这样的:

    • 以主要语言(通常是英语)创建基本 MSI
    • 为每种语言创建一个MST transform;此转换应将 UI 字符串更改为其翻译后的值
    • 创建一个自定义 EXE 引导程序,用于检测系统语言或显示语言选择对话框
    • 这个引导程序应该launch the MSI with the appropriate transform

    Visual Studio 不支持此功能,但您可以使用 Orca 生成转换。

    请注意,这不是一件容易的事。您必须手动完成所有操作,包括将 UI 字符串翻译成您想要的语言。

    对于多语言包,使用已经具有专门支持和适当字符串的商业设置创作工具会更容易。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-02-20
      • 2016-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-22
      • 1970-01-01
      • 2011-10-24
      相关资源
      最近更新 更多