我的基于WIX的安装程序正在尝试验证现有的注册表项。然后满足继续安装的条件。虽然“MS Project”存在,但我的情况失败了。
<Property Id="MSPROJECT2013">
<RegistrySearch Id="MSProject2013"
Root="HKCU"
Key="Software\Microsoft\Office\15.0\MS Project"
Name="ProjectName"
Type="raw" />
</Property>
<Condition Message="This application requires MS Project 2010 or 2013.">
<![CDATA[Installed OR MSPROJECT2013]]>
</Condition>
相关的详细输出:
Action 16:59:35: AppSearch. Searching for installed applications
Action start 16:59:35: AppSearch.
AppSearch: Property: MSPROJECT2013, Signature: MSProject2013
MSI (c) (14:00) [16:59:35:547]: Note: 1: 2262 2: Signature 3: -2147287038
Action ended 16:59:35: AppSearch. Return value 1.
This application requires MS Project 2010 or 2013.
MSI (c) (14:00) [16:59:36:582]: Note: 1: 2205 2: 3: Error
MSI (c) (14:00) [16:59:36:582]: Note: 1: 2228 2: 3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1709
MSI (c) (14:00) [16:59:36:582]: Product: reporting -- This application requires MS Project 2010 or 2013.
我认为这是权限问题,但注册表权限很好。我尝试了其他地方,但它仍然失败了。我在注册表中找不到ProductID或UpgradeCode(作为卸载/安装失败)!我还运行了Microsoft Fixit,取代了他们的安装清理工具。可能是什么问题?
答案 0 :(得分:0)
RegistrySearch失败了;如果成功,则日志将包含一行报告在新属性值中找到的值。