我们所有的报告服务生产实例都分为 Web 服务器组件和报告数据库组件。
我知道您可以通过以下 TSQL 检测数据库服务器上的 SQL Server 实例:
SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'),
SERVERPROPERTY ('edition')
但是,在我们的例子中,报告服务器没有安装数据库服务器组件。那么在这种情况下如何检测安装了什么服务包呢?
我们所有的报告服务生产实例都分为 Web 服务器组件和报告数据库组件。
我知道您可以通过以下 TSQL 检测数据库服务器上的 SQL Server 实例:
SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'),
SERVERPROPERTY ('edition')
但是,在我们的例子中,报告服务器没有安装数据库服务器组件。那么在这种情况下如何检测安装了什么服务包呢?
手动或使用网页抓取,浏览到
http://reportServerName/ReportServer
版本号在页面底部。
或以编程方式:
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
class Sample
{
static void Main(string[] args)
{
// Create proxy object and set service
// credentials to integrated
ReportingService2006 rs = new ReportingService2006();
rs.Url = "http://<Server Name>/_vti_bin/ReportServer/" +
"ReportService2006.asmx";
rs.Credentials =
System.Net.CredentialCache.DefaultCredentials;
try
{
// Set the server info header
rs.ServerInfoHeaderValue = new ServerInfoHeader();
// Make a call to the Web service
CatalogItem[] items = rs.ListChildren("/");
// Output the server version and edition to the console
Console.WriteLine("Server version: {0}",
rs.ServerInfoHeaderValue.ReportServerVersionNumber);
Console.WriteLine("Server edition: {0}",
rs.ServerInfoHeaderValue.ReportServerEdition);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
}
在您的浏览器中转到
http://<reportserverName>/reportserver
只看页面底部
Reporting Services 配置工具详细说明了正在运行的SQL Server 版本。
在现代 2017 版本中,“帮助 | 关于”效果很好。