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