假设我使用的目录名为
<Property Id="PROJECTNAME"> xyz </Property>
<Directory Id="Hello" Name=[PROJECTNAME]>
我想在运行安装程序时更改目录名称。
目录名称应从命令行传递或从文件中读取。
任何建议都会有所帮助。
先谢谢, Pradeep Kumar。
答案 0 :(得分:0)
这里有两种情况:
参数通过命令行传递。
在这里,您可以使用MSI包的功能并将您的参数作为属性传递,例如 REALINSTALLDIRECTORY =“C:\ Install”。
参数通过文件传递。
您应该实现自定义操作,该操作将从文件中读取值并设置 REALINSTALLDIRECTORY 属性。
之后,您可以使用自定义操作显式设置目录:
<CustomAction Id="SetDirectoryToValue" Directory="Hello" Value="[REALINSTALLDIRECTORY]" />
此自定义操作的执行方式如下:
<InstallExecuteSequence>
<Custom Action="SetDirectoryToValue" After="CostFinalize" />
</InstallExecuteSequence>