如何检查SQL Server是否安装在wix 3.5

如何检查SQL Server是否安装在wix 3.5

问题描述:

我在这里做错了什么。我从* thread得到了这段代码,但它们都不起作用。如何检查SQL Server是否安装在wix 3.5

<Property Id="SQLSERVER_INSTANCE"> 
     <RegistrySearch Id="SQLServerRegSearch" Root="HKLM" Key="SOFTWARE\Microsoft\Microsoft SQL Server" Type="raw" Name="InstalledInstances"/> 
    </Property> 
    <Feature Id="DatabaseFeature" Title="Database" Level="1" Display="expand"> 
     <Condition Level="0"> 
     <![CDATA[SQLSERVER_INSTANCE = ""]]> 
     </Condition> 
     <ComponentRef Id='SqlComponent' /> 
     <ComponentRef Id='cmpMDF' /> 
     <ComponentRef Id='cmpLDF' /> 
    </Feature> 

这工作:

<Property Id="ISSQLSERVERSERVICEINSTALLED" > 
    <RegistrySearch Id="IsSqlServerServiceInstalled" Root="HKLM" Key="SYSTEM\CurrentControlSet\services\MSSQLSERVER" Name="Description" Type="raw"/> 
</Property> 
+0

这对我来说doeinstasn't工作。我安装了SQL Server,并没有此密钥。我有个别实例名称和SqlBrowser的键 – 2013-05-02 21:21:19

有是Windows的32位和64位版本之间的SQL服务器注册表键的差异。

这很可能是您的WiX代码无法正常工作的原因。

看到这个博客的一些综合性的代码片段:http://robs-got-a-blog.blogspot.com/2011/08/detecting-sql-server-from-wix-installer.html