Как определить (из установщика), установлен ли SQL Server Reporting на сервере? - PullRequest
3 голосов
/ 13 сентября 2011

Я работаю над проектом установщика Windows (через InstallShield), который будет выполнять некоторую работу со службами отчетов SQL.

Кто-нибудь знает, какой самый безопасный способ определить, установлены ли на целевой машине службы отчетов SQL?

Пока я обнаружил, что:

  1. Я могу проверить сервис MSSQLSERVER или
  2. Проверьте реестр на наличие следующего ключа:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{0C270C59-8706-42B8-A2AD-6E5EE18BC90B}

Я всегда предпочитал использовать реестр, чтобы найти что-то установленное, но я не уверен, что это правильный ключ в этом случае. (Я знаю, что поиск этого конкретного раздела реестра будет соответствовать только службам отчетов SQL Server 2008 R2, что в моем случае будет хорошо).

Примечание: я склоняюсь к использованию поиска в реестре, но альтернативный метод, использующий код C #, подойдет, если кто-то знает, как это сделать.

Ответы [ 2 ]

3 голосов
/ 13 сентября 2011

Похоже, что лучший подход это сделать программно с помощью настраиваемого действия: http://technet.microsoft.com/en-us/library/bb630446.aspx

Учебное пособие по настраиваемым действиям можно найти здесь: http://www.codeproject.com/KB/install/msicustomaction.aspx

Обратите внимание, что только win32Пользовательские действия DLL и VBScript могут устанавливать свойства установщика.Таким образом, действие класса установщика .NET не будет работать.

0 голосов
/ 03 июня 2019

Вы можете проверить раздел реестра: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SQL Server \ SSRS \ MSSQLServer \ CurrentVersion

Здесь описано, как проверить, установлены ли службы отчетов SQL Server с помощью Actual Installer: https://www.actualinstaller.com/help/prerequisites.html

...