【发布时间】:2012-07-09 17:03:59
【问题描述】:
我们有一些代码来识别返回意外结果的 SQL Server 实例及其关联的 Reporting Server 实例。
一台机器有两个实例 SQL Express (2008) - (local)/SQLEXPRESS 和 (local)/EXPRESS_BOB - 每个实例都有自己的报告服务器。
使用 WMI,我们可以识别 SQL Server 实例,这可以按预期工作。对于每个实例,我们按如下方式查询 RS 实例:
public void QueryServers(string wmiPath)
{
using (
var searcher = new ManagementObjectSearcher(
wmiPath,
"Select * from MSReportServer_ConfigurationSetting"))
{
ManagementObjectCollection moc = searcher.Get();
//
// Process objects in moc
//
}
}
这是针对 wmiPath 的两个值运行的(注意 - 需要以管理员身份运行):
- wmiPath = "root\Microsoft\SqlServer\ReportServer\RS_SQLEXPRESS\v10\Admin"
- wmiPath = "root\Microsoft\SqlServer\ReportServer\RS_EXPRESS_5fBOB\v10\Admin"
不管wmiPath 的值是多少,moc 集合始终包含两个值:
- moc[0] ["InstanceName"] = "SQLEXPRESS"
- moc[1] ["InstanceName"] = "EXPRESS_BOB"
指定 SQL Server 实例的 WMI 路径下的查询如何返回(我希望)位于不同路径下的 Report Server 实例?
这是正确的查询路径吗?
【问题讨论】:
-
查看这些链接...解释如何查询 Reporting Services 实例信息...检查您的注册表...尝试解决方法。 nocentdocent.wordpress.com/2010/07/03/… .... magalhaesv.wordpress.com/2012/05/24/…
标签: c# reporting-services ssrs-2008 wmi