.net 使用dotNetInstaller检查是否安装了SQL Server 2008
我正在尝试为需要Microsoft SQL Server 2005向后兼容组件的应用程序创建一个具有的引导程序。我使用预构建的组件添加了一个检查 一切都很好,直到我意识到在安装Microsoft SQL Server 2005向后兼容组件之前需要检查SQL Server 2008的安装情况 这就是我被卡住的地方,在microsoft的下载页面中,我仔细检查了microsoft SQL Server 2005向后兼容性组件的系统要求,其中没有说明机器需要安装SQL Server 2008.net 使用dotNetInstaller检查是否安装了SQL Server 2008,.net,installation,bootstrapper,dotnetinstaller,.net,Installation,Bootstrapper,Dotnetinstaller,我正在尝试为需要Microsoft SQL Server 2005向后兼容组件的应用程序创建一个具有的引导程序。我使用预构建的组件添加了一个检查 一切都很好,直到我意识到在安装Microsoft SQL Server 2005向后兼容组件之前需要检查SQL Server 2008的安装情况 这就是我被卡住的地方,在microsoft的下载页面中,我仔细检查了microsoft SQL Server 2005向后兼容性组件的系统要求,其中没有说明机器需要安装SQL Server 2008 如果需要
如果需要为Microsoft SQL Server 2005向后兼容组件安装SQL Server 2008,则我要检查是否已安装SQL Server 2008,如果没有,请跳过Microsoft SQL Server 2005向后兼容组件的安装,并继续安装我的产品。我尚未使用dotNetInstaller,但您可以从注册表中获取已安装SQL Server的当前版本:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90\Tools\ClientSetup\CurrentVersion
如果该条目存在,则表示已安装SQL Server 2008
如果未安装SQL Server 2008,则不应存在注册表项。不过,您可能需要检查卸载时发生的情况。我不知道条目是否仍然存在
环顾四周,我认为您可以使用
check\u registry\u value
install check来检查dotNetInstaller中的注册表值。SQL Server 2008 R2呢。经过一番忙乱之后,我找到了类似于SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL\SQLEXPRESS
的东西,它的值应该是MSSQL10\u 50.SQLEXPRESS
。这行得通吗?嗯,不太清楚SQL Express。但我希望SQLServer2008R2也在我提到的注册表项下,因为它仍然是9.0版。在CurrentVersion密钥中,应该有关于其确切版本的更多信息(R2或否、Service Pack等)。您可以在此处查看有关SQL Server版本的信息: