Reporting services Microsoft SQL Server Reporting Services 2017注册表

Reporting services Microsoft SQL Server Reporting Services 2017注册表,reporting-services,ssrs-2017,Reporting Services,Ssrs 2017,Microsoft SQL Server Reporting Services 2017的注册表路径是否更改 在我们能够在此处找到实例名称之前: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\RS\MSSQLSERVER 但现在2017年,MSSQLSERVER缺失,取而代之的是SSR 根据文章,它应该仍然在MSSQLSERVER下,但不是。我们是否错过了一些导致这种情况的安装设置,或者现在这

Microsoft SQL Server Reporting Services 2017的注册表路径是否更改

在我们能够在此处找到实例名称之前:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\RS\MSSQLSERVER
但现在2017年,MSSQLSERVER缺失,取而代之的是SSR


根据文章,它应该仍然在MSSQLSERVER下,但不是。我们是否错过了一些导致这种情况的安装设置,或者现在这是默认的标准行为

因为Reporting Services现在是一个单独的安装,所以它作为命名实例安装
SSRS
。这与以前的版本有所不同,在以前的版本中,Reporting Services是SQL Server设置的一部分

我建议使用WMI查询来获取必要的信息(下面使用PowerShell的示例)。请注意,v14指的是2017版

$wmiName = (Get-WmiObject –namespace root\Microsoft\SqlServer\ReportServer  –class __Namespace).Name
$rsConfig = Get-WmiObject –namespace "root\Microsoft\SqlServer\ReportServer\$wmiName\v14\Admin" -class MSReportServer_ConfigurationSetting

我知道这篇文章很老,但我在我的公司也遇到了同样的问题,无法从RS 2017中找到信息,并且没有找到报告正确位置的地方,所以我想在这里发表文章

我和我的朋友保罗·亨里克·罗德里格斯·奥林德(Paulo Henrique Rodrigues Orind)找到了一个地方,在那里你可以获得关于2017年RS的所有信息,我希望2019年RS也是一样

1)通过PowerShell+WMI:

Get-WmiObject -namespace "root\Microsoft\SqlServer\ReportServer\RS_SSRS\V14" -class MSReportServer_Instance | Select-Object -Property EditionName, Version, InstanceName

2)通过C#+WMI(您是否需要导入System.Management.dll)

using System;
using System.Management;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {

            ConnectionOptions options = new ConnectionOptions();
            options.Impersonation = System.Management.ImpersonationLevel.Impersonate;

            ManagementScope scope = new ManagementScope("Root\\Microsoft\\SqlServer\\ReportServer\\RS_SSRS\\V14", options);
            scope.Connect();

            //Query system for Operating System information
            ObjectQuery query = new ObjectQuery("SELECT * FROM MSReportServer_Instance");
            ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);

            ManagementObjectCollection queryCollection = searcher.Get();
            foreach (ManagementObject m in queryCollection)
            {
                // Display the remote computer information
                Console.WriteLine("EditionName       : {0}", m["EditionName"]);
                Console.WriteLine("EditionID         : {0}", m["EditionID"]);
                Console.WriteLine("InstanceID        : {0}", m["InstanceID"]);
                Console.WriteLine("InstanceName      : {0}", m["InstanceName"]);
                Console.WriteLine("Version           : {0}", m["Version"]);
            }

            Console.ReadKey();
        }
    }
}

3)WMI:

Get-WmiObject -namespace "root\Microsoft\SqlServer\ReportServer\RS_SSRS\V14" -class MSReportServer_Instance | Select-Object -Property EditionName, Version, InstanceName

打开WMI: 名称空间:Root>>Microsoft>>SqlServer>>ReportServer>>RS\u SSRS>>V14 类:MSReportServer\u实例

我希望我帮了点忙