首页 > 解决方案 > Wix msi 更新的属性值在安装期间不起作用

问题描述

在 Visual Studio 中使用 Wix。我在 wxs 文件的 Product 节点中定义了一个公共属性。

<Property Id="MYPROP" Value="123456789"/>

属性值作为命令行参数传递给延迟的自定义操作可执行文件。我也可以在 exe 中接收它。问题是即使我使用 vbs 更新属性(也通过 vbs select 验证),当我启动 msi 时,它仍然会将默认/原始值 (123456789) 传递给自定义操作可执行文件。

还尝试了 msiexec.exe /i myinstaller.msi MYPROP=SomeOtherValue

我仍然看到原始值。怎么了?

标签: wixwindows-installer

解决方案


也许先试试这个简单的事情:

<Property Id="MYPROP" Secure="yes" Value="123456789"/>

本质上,您需要向SecureCustomProperties列表中添加一个属性,以使它们在安全桌面环境中正确传递到延迟模式。

SecureCustomProperties在此处查看更多信息。由于 Windows 的变化,这里的技术细节有些变化,所以请先尝试一下 - 可能还有其他几个原因。

你如何使用这个属性?它有什么作用?


推荐阅读