Обнаружение, установлен ли SQL Server 2008 - PullRequest
3 голосов
/ 15 июля 2010

Я использую dotNetInstaller в качестве загрузчика, и мне нужно определить, установлен ли SQL Server 2008 или выше в качестве предварительного условия.

В настоящее время я использую этот реестр для обнаружения установки: HKLM\SOFTWARE\Microsoft\Microsoft SQL Server 2008 Redist\SharedManagementObjects\1033\CurrentVersion\Version

Если значение Version равно 10.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" />

Кто-нибудь знает окончательный ключ для проверки?

Ответы [ 3 ]

2 голосов
/ 21 июля 2010

Я полагаю, что ключ, который я использовал, обнаруживает только если инструменты установлены.Я собираюсь использовать этот ключ: SOFTWARE\Microsoft\Microsoft SQL Server\100\Bootstrap Release\1033\CurrentVersion\Version

2 голосов
/ 30 ноября 2011
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\Bootstrap\Setup

PatchLevel

Скорее всего, это более вероятный кандидат, поскольку он обновляется как установками R2, так и R2 SP1.

1 голос
/ 15 июля 2010

Они не используют SQL Server 2008 Developer Edition они?Я думаю, что ключ может отличаться на уровне «Microsoft SQL Server 2008 Redist», но у меня нет его здесь для проверки.

...