3

我使用dotNetInstaller作为引导程序,我需要检测是否安装了 SQL Server 2008 或更高版本作为先决条件。

目前我正在使用这个注册表来检测安装: HKLM\SOFTWARE\Microsoft\Microsoft SQL Server 2008 Redist\SharedManagementObjects\1033\CurrentVersion\Version

如果 的值为Version10.0.0 或更高,它会检测到它已安装。我们在这里尝试了 10 台机器上的安装包(Windows XP SP3 和 Windows 7),前提条件运行良好。我们收到很多人的报告,尽管他们安装了 SQL 2008,但它并没有检测到安装。

从日志:

2010-07-13 09:33:49 Checking whether registry value 'SOFTWARE\Microsoft\Microsoft SQL Server 2008 Redist\SharedManagementObjects\1033\CurrentVersion\Version' exists
2010-07-13 09:33:49 Opening 64-bit registry view (KEY_WOW64_64KEY)
2010-07-13 09:33:49 *** No registry key found: SOFTWARE\Microsoft\Microsoft SQL Server 2008 Redist\SharedManagementObjects\1033\CurrentVersion\Version, default value: false
2010-07-13 09:33:49 -- Microsoft SQL Server 2008 R2 x86 (Microsoft SQL Server 2008 R2 x86 Express): NOT INSTALLED

dotNetInstaller 检查:

<installedcheck type="check_registry_value"
                                            rootkey="HKEY_LOCAL_MACHINE"
                                            path="SOFTWARE\Microsoft\Microsoft SQL Server 2008 Redist\SharedManagementObjects\1033\CurrentVersion"
                                            fieldname="Version"
                                            fieldtype="REG_SZ"
                                            fieldvalue="10.0.0"
                                            comparison="version_ge"
                                            wowoption="WOW64_64"
                                            defaultvalue="False"
                                            description="Installed Check" />

有人知道要检查的最终密钥吗?

4

3 回答 3

2

我相信我使用的密钥仅检测工具是否已安装。我将使用这个密钥:SOFTWARE\Microsoft\Microsoft SQL Server\100\Bootstrap Release\1033\CurrentVersion\Version

于 2010-07-20T20:26:37.637 回答
2
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\Bootstrap\Setup

PatchLevel

由于 R2 和 R2 SP1 安装都对它进行了更新,因此似乎更有可能成为候选者。

于 2011-11-30T11:08:56.897 回答
1

他们没有使用SQL Server 2008 Developer Edition,是吗?我认为关键可能在“Microsoft SQL Server 2008 Redist”级别有所不同,但我没有在这里检查。

于 2010-07-15T16:34:48.523 回答