我正在尝试找到一种方法来在我在本地运行代码的某些计算机上获取已安装的 SQL Server 版本。
我没有 SQL Server 的登录名,因此无法在它们上运行 SQL。我知道它可以通过注册表来完成,但我必须使用 WMI 来完成。
我已经读过 Win32_Product 运行速度可能很慢,并且在使用 WMI Explorer 查询它时确实需要一些时间,而且我读到它可能会在超过 30 秒时出错,所以我宁愿找到另一种方法。这些计算机甚至包括旧的 Win2000(及更高版本)。
另一个选项似乎是“root\Microsoft\SqlServer\ComputerManagement”下的“SqlServiceAdvancedProperty”,如下所示:http: //blogs.msdn.com/b/sqlexpress/archive/2006/07/29/faq-detecting-sql-服务器-2005-使用-wmi.aspx
但是在我自己的电脑上,有两个“ComputerManagement”,最后都有数字。对于“SqlServiceAdvancedProperty”的查询,“ComputerManagement10”不会返回任何内容,但“ComputerManagement11”会。
我可以指望这里提供的信息吗?如何检查正确的?