2014-06-10 136 views
0

我試圖確定它是安裝的LocalDB和SqlLocalDB我試圖從這個鏈接Determine if SqlLocalDB is installed維克斯:確定是否安裝

的路要走,但我得到了我的日誌文件中的錯誤:註冊表項未找到。重點= 'SOFTWARE \微軟\ Microsoft SQL Server的\ MSSQL12E.LOCALDB \的MSSQLServer \ CURRENTVERSION'

我的代碼是:

<util:RegistrySearch Id="SearchForLocalDB" 
       Root="HKLM" 
       Key="SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12E.LOCALDB\MSSQLServer\CurrentVersion" 
       Value="CurrentVersion" 
       Variable="LocalDBVersion" 
       Result="value"/> 
<PackageGroup Id="LOCALDB"> 
    <MsiPackage Id="LOCALDB" 
       DisplayName="Microsoft SQL Server 2014" 
       Permanent="yes" 
       Visible="yes" 
       DisplayInternalUI="yes" 
       SourceFile=".\SqlLocalDB.msi" 
       InstallCondition="(LocalDBVersion &lt;= &quot;12.0&quot;)" 
    /> 
</PackageGroup> 

+0

你的鏈接的文章有結果=「原始的」不是結果=「值」 –

+0

並且不要忘記你可能需要指定Win64如果這個64位密鑰。 – PhilDW

+0

結果沒有「原始」值。只有「存在」和「價值」。而大聲笑Win64真的很有用。 Omg太愚蠢了。非常感謝!!! – user2676202

回答

1

使用Result='exists',而不是拉動的實際值。您已擁有關鍵值中的版本,因此您無需在InstallCondition中檢查它。