首页 > 解决方案 > 如何将自定义参数传递给 Advanced Installer 11.4

问题描述

我正在使用 Advanced Installer 11.4。

我想要求一个参数并使用安装程序更新注册表项。

我看到了这篇文章,但这在 11.4 中不可用

https://stackoverflow.com/questions/45195317/advanced-installer-how-to-pass-arguments-to-executable

最终结果将是..

myInstaller.msi /qn MyArg="abc123"

MyArg 是绑定到正确注册表项的属性。

标签: c#advanced-installer

解决方案


您可以使用您已经拥有的命令行,只需稍加改动即可。使用大写字母作为您的财产名称:

myInstaller.msi /qn MYARG="abc123"

Windows Installer 属性是 Windows Installer 在安装期间使用的全局变量。有两种主要类型的 Windows Installer 属性:

  • 私有属性(名称中包含小写字母,例如:My_Prop)
  • 公共属性(名称中仅包含大写字母,例如:MY_PROP)

PublicPrivate属性之间的区别在于它们的值被传递的方式。只有公共属性的值从向导对话框阶段(显示对话框)传递到安装执行阶段(修改系统)。

因此,如果您希望其值在 InstallExecute Sequence 中可用(例如,如果此属性的值写入注册表,.ini文件),否则您将获得分配给此属性的默认值。


推荐阅读