处理多语言MSI Installscript Installshield安装程序问题

问题描述 投票:0回答:1

我是一名新的InstallShield开发人员,面临将我公司的桌面应用程序之一转换为多语言安装程序的挑战。我主要按照安装程序检测操作系统语言并显示具有适当语言环境的对话框的方式,按照我们希望的方式工作。这是一个MSI InstallScript项目,我不得不使用ID_string从脚本中切换出一些硬编码的字符串,然后使用编辑器将该字符串(及其翻译)添加到数据库中-就像一个魅力。

我需要解决的最后一个问题是如何使应用程序以适当的语言启动。该应用程序确实具有更改U​​I区域设置的功能,但是它位于“设置”区域中,因此用户在启动应用程序后需要导航至该区域以进行更改。应用程序中没有检测操作系统并以该语言环境打开的功能。我想避免要求开发人员添加它。应用程序的已安装文件中有一个XML文件,我可以手动编辑该文件并强制该应用程序在该语言环境中启动。我看过使用“ XML文件更改”工具,但遇到了困难。我还尝试为每种语言添加新组件以在安装过程中放置​​新的xml文件,但是我遇到了很多无法压缩文件的错误以及其他一些错误。

这似乎是一个可能已经被其他人多次研究的问题。我很想知道是否可能缺少InstallShield中针对此类问题的明显功能/工具,或者有人建议我尝试一下。

提前感谢您的帮助!

凯文

installer installshield globalization
1个回答
0
投票

很抱歉延迟返回以解释我最终如何解决我的问题。主要问题是我需要检测操作系统的语言,然后使用它来使安装程序放置适当的xml文件,该文件告诉应用程序启动时显示哪种语言。

我为添加的每种新语言创建了其他组件。在每个新组件中,我都会按语言进行有条件的安装(在右侧的组件菜单区域中轻松进行设置)。我的条件是,当ProductLanguage代码与该组件的代码匹配时,它将具有适当语言环境节点的xml文件复制到目标计算机目录。当应用启动时,它将以与该ProductLanguage代码匹配的语言启动。

似乎工作正常。我基本上只是复制了将英语XML文件放置到targetdir的原始组件,并为添加到安装程序的每种语言环境制作了一个组件,并将新组件设置为有条件安装。

感谢任何尝试提供帮助的人。我认为有时需要在寻求帮助的过程中总结一个问题才能真正看到全局。

© www.soinside.com 2019 - 2024. All rights reserved.