Juan C. Becerra
Juan C. Becerra

Reputation: 302

How to detect (from installer) if SQL Reporting is installed in the server?

I'm working on a Windows Installer project (via InstallShield) that will perform some work with SQL Reporting Services.

Does anybody know what is the safest way to detect if SQL Reporting services are installed in the target machine?

So far I've found that:

  1. I could check for the MSSQLSERVER service or
  2. Check the registry for the following key:

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

I've always preferred to use the registry in order to find something is installed, but I'm not sure this is the correct key in this case. (I'm aware that searching for that particular registry key would only match SQL Server 2008 R2 Reporting Services, which in my case would be fine).

Note: I'm leaning towards using the registry entry search, but an alternative method using C# code would be fine if someone knows how to do it.

Upvotes: 3

Views: 1906

Answers (2)

Aaron F.
Aaron F.

Reputation: 1

You can check the registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\SSRS\MSSQLServer\CurrentVersion

Here is described how to check if SQL Server Reporting Services is installed via Actual Installer: https://www.actualinstaller.com/help/prerequisites.html

Upvotes: 0

Cosmin
Cosmin

Reputation: 21416

It looks like the best approach is doing it programmatically through a custom action: http://technet.microsoft.com/en-us/library/bb630446.aspx

You can find a custom action tutorial here: http://www.codeproject.com/KB/install/msicustomaction.aspx

Please note that only win32 DLL and VBScript custom actions can set installer properties. So a .NET installer class action won't work.

Upvotes: 3

Related Questions