Installshield 包括卫星 dll
我在 installshield 项目中遇到了包括卫星 dll 在内的问题。
我尝试添加一个组件,例如挪威语安装的“SatelliteNorwegian”,我将其“数据语言”字段设置为挪威语。实际文件位于文件夹 [INSTALLDIR]/no-NB/ 中。我已将其设置为动态文件链接。
问题是,当我们构建挪威版本时,我们的构建系统只会拉入此文件夹。这会导致构建错误,因为 installshield 无法找到引用的文件夹。一种可能的解决方案是为我们支持的每种语言添加一个空文件夹,目前有 9 种并且还在增加。
有人知道解决这个问题的好方法吗?
I'm having problems including satellite dll's in a installshield project.
I've tried adding a component, say "SatelliteNorwegian" for a norwegian language installation, for which I set the "Data Language" field to norwegian. The actual files reside in the folder [INSTALLDIR]/no-NB/. I've set this up as a dynamic file link.
The problem is that our build system will only pull in this folder when we are building a norwegian release. This results in a build error since installshield cannot find the referenced folder. One possible solution is to include an empty folder for every language we support, currently 9 and counting.
Does anybody know a good solution to this problem?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先,我已经写过很多很多次关于动态文件链接的危险的文章。我真心建议你不要使用这个功能。也就是说,无论您选择使用静态组件还是动态组件,以下内容都将起作用。
您需要为每种支持的语言创建一个子功能,并将该语言的组件移至该子功能。然后为每个子功能指定一个唯一的发布标志,例如 EN-US、NO-BN。
接下来,您将为要构建的每种语言定义产品配置。为该产品配置提供匹配的发布标志。每个配置都会选取没有标志或有匹配标志的所有功能。
在构建自动化中,您必须更新对 ISCMDBLD 的调用,以使用 -a 参数指定要构建的正确产品配置。
First, I've written many, many times about the perils of dynamic file linking. I really suggest that you don't use this feature. That said, the following will work regardless if you choose to use static components or dynamic components.
You need to create a subfeature for each of your supported languages and move the components for the language to that subfeature. Then give each subfeature a unique release flag such as EN-US, NO-BN.
Next you are going to define a Product Configuration for each language that you want to build. Give that product configuration a matching release flag. Each configuration will pick up all features that either don't have a flag or have a matching flag.
In your build automation you'll have to update your calls to ISCMDBLD to specify the correct product configuration to build using the -a argument.