2010-03-02 42 views
9

我已经有选项来安装两种不同语言的MSI包,是否有检测负责选择的语言,所以我可以使用命令提示符静默安装包(无人值守的参数的方式安装)?检测MSI参数无人参与的安装

感谢

回答

7

正常的方式来做事与MSI是谁用大写字母完全不同的名称被认为是一个公共的外部属性的属性表中的任何财产。这意味着当您从命令行运行MSI时它是可设置的。

所以,如果你的工作你想怎么标记语言的选择,把财产的,然后你可以链接组件或功能安装MSI内该标志/变量。

所以,如果你不熟悉的概念还没有,看看组件功能性质的MSI。你没有提到你正在使用哪个MSI构建器 - 如果你使用的是Visual Studio附带的构建器,我不知道它是否能够让你访问组件和功能,但是有一两个低价位或免费(即Wix)替代品(如果您使用的是Wise或InstallShield等适当的东西,那么您可以完全控制所有这些东西)。

编辑:here is a link到一个脚本,将提取的公共属性的列表,你(点击文本获得MSI-文件properties.vbs看到剧本)。或者,How can I see what public properties are available?Extracting properties from MSI file without installing可能会为您提供一些其他选项。

ServerFault上的家伙可能会对此有所帮助,我知道有一些Windows管理工具可以让您反汇编和/或包装MSIS,但我不记得他们被称为什么。

+0

我不是谁做的MSI的一个,这就是为什么我问怎么检测所有可能的参数 – Wel 2010-03-02 21:14:09

+0

好吧,我有我的编辑职位。我也投了赞成把它移到serverfault,因为这是一个更相关的地方(它将属于这里,如果它是关于* authoring * MSI)。您可能需要在那里手动提出您的问题,以防该问题在列表中下滑得太远,以至于无法获得足够的选票来自动移动。 – slugster 2010-03-02 22:31:35

+0

逆戟鲸的伎俩:) – Wel 2010-03-04 17:03:49