Windows installer 如何在MSI补丁期间读取自定义属性?

Windows installer 如何在MSI补丁期间读取自定义属性?,windows-installer,Windows Installer,我们有一个设置,可以创建一个指向用户指定的虚拟目录(安装期间存储在属性中)的快捷方式,例如 现在我正在制作一个补丁,但是,虚拟目录的值不可用,快捷方式变为空。 我该怎么处理呢?我现在无法更改原始设置,因为它已经发布 有没有办法在修补程序期间读取该属性? 为什么MSI“修复”能够读取该值? 谢谢。Windows Installer不会在安装事务中保留属性。您必须将属性保存在某个位置(如注册表),然后将其读回,以便该属性仍然具有值,否则它将为null 修复可能没有重新安装创建快捷方式和vdir的组件

我们有一个设置,可以创建一个指向用户指定的虚拟目录(安装期间存储在属性中)的快捷方式,例如

现在我正在制作一个补丁,但是,虚拟目录的值不可用,快捷方式变为空。 我该怎么处理呢?我现在无法更改原始设置,因为它已经发布

有没有办法在修补程序期间读取该属性? 为什么MSI“修复”能够读取该值?
谢谢。

Windows Installer不会在安装事务中保留属性。您必须将属性保存在某个位置(如注册表),然后将其读回,以便该属性仍然具有值,否则它将为null


修复可能没有重新安装创建快捷方式和vdir的组件,因此不会被擦除。修补程序可能重新安装了=ALL和REINSTALLMODE=vomus,因此它们确实被重新安装并因此被删除。

谢谢您的回答,但是如果我手动删除快捷方式并进行修复,Windows Installer可以恢复快捷方式。当我从修复中查看日志文件时,MSI以某种方式能够检索虚拟目录的值。因此,我说“可能”。我建议您记录修复和补丁以获取更多数据。没关系。我错误地认为MSI能够检索自定义属性的值。它只是使用属性的默认值。无论如何,谢谢你,克里斯托弗。