Visual Studio安装项目条件,注册表无法正常工作

时间:2017-02-03 15:59:12

标签: visual-studio command-line windows-installer

我创建了一个需要在HKLM中创建注册表项的安装项目。 作为这个条件,我写了" NOT(MYCONDITION = 1)",这样如果用户在命令行执行msi期间定义MYCONDITION = 1,则不写入注册表项。 msiexec / i mymsi.msi / passive / MYCONDITION = 1

然而,MSI文件忽略了它,仍然写入了注册表项。

我在“文件系统”视图中的文件上设置了完全相同的条件,此处可以正常工作。因此,如果用户具有此MyCondition = 1,则不会将该文件复制到安装文件夹。

你们有没有想出我之所以遇到这种行为的原因? 感谢

1 个答案:

答案 0 :(得分:0)

我找到了让它发挥作用的方法。我没有将条件放在我想要添加的值的父键上,而是在每个注册表值上设置条件,并且工作正常。 但是请确保在Key上将“AlwaysCreate”属性设置为false,以便在未创建其子值时不会创建它