Reporting Services WMI sağlayıcısı

Reporting Services WMI sağlayıcı'nın kuruluş ortamında, Denetim ve yönetim bilgilerine erişmek için standart Windows Yönetim Araçları (WMI) teknoloji yerleşik olarak bulunur.Için WMI sağlayıcı Reporting Services rapor sunucusu XML yapılandırma öğelerini ekleme, kaldırma veya rapor sunucusu yapılandırma bilgilerini değiştirmek için arama yöntemlerini içeren sınıf bir eşleştirme, bir örnek sağlayıcı olarak hizmet verir. Sınıfları hakkında daha fazla bilgi için bkz: Hizmetleri WMI sağlayıcısı kitaplığı bildirdiği için.

WMI sağlayıcı'na genel bakış

WMI sınıfları yer Reporting Services Raporlama sunucusu ve Rapor Yöneticisi, bir rapor sunucusu Web hizmetinin çalıştığı ağ makineleri bulmaya ve bir rapor sunucusunu etkinleştirmek için bir yol sağlamak için yerel ve uzak bilgisayarlarda denetlenir bileşenlerinin örnek içine bir ölçek - dağıtım öğrenin. Sistem yöneticileri ve Veritabanı yöneticileri bu sınıflar, yükleme tamamlandıktan sonra yapılandırmaları rapor sunucusu ve Rapor Yöneticisi için değişiklik veya yerel veya uzak sunucu yönetim görevlerini gerçekleştirmek için kullanabilirsiniz.Raporlama sunucusu ve rapor sunucusu veritabanı arasında veritabanı bağlantı kimlik bilgileri bilgilerini değiştirme, rapor sunucusu veritabanı adını değiştirme ve yükleme tanımlayan bir URL değiştirme görevlerini içeren yol rapor sunucusu örneğinin veya Report Manager.

Bu işlevleri desteklemek üzere yüklenen sınıflar aşağıdaki gibidir:

The namespace used to obtain information about Reporting Services in the code samples shown in this topic is the System.Management namespace, found in the Microsoft .NET Framework.The System.Management namespace provides a küme of yönetilen kod classes through which .NET Framework applications can access and manipulate management information. For more information on using the Reporting Services WMI classes using the System.Management namespace, see "Accessing Management Information with System.Managment" in the Microsoft .NET Framework SDK.

rapor sunucusu örnek bulma

Bilgisayarda birden çok örnek s yüklü bir rapor sunucusu varsa, yönetici için kesin olarak göstermek gereken örnek bilgisayardaki özelliklerini değiştirme.Doğrudan örnek bulmak için , her sınıf, bir anahtar olarak tanımlanmış bir özellik içerir.Bu anahtar özellik benzersiz olarak tanıtan bir rapor sunucusu yükleme.Bir anahtar olarak tanımlanan özelliği Yoladı özellik.Bu özelliğin değeri yapılandırma dosyası adı da dahil olmak üzere RSReportServer.config yapılandırma dosyası yoludur.Çoğu yüklemeler için bu yol, aşağıdaki örnektekine benzer olacaktır:

C:\Program Files\Microsoft SQL Server\MSRS10.<InstanceName>\Reporting Services\ReportServer\rsreportserver.config

Sonra MSReportServer_ConfigurationSetting sınıfı oluşturulur, bu anahtar doldurmak ve bilgisayar için arama bir örnek rapor sunucusu ya da bu anahtarla eşleşen Report Manager.Bulunamıyor, diğer değerleri bu örneğinden yönetimi koleksiyon doldurun.

Doldurma tarafından bilgi edinebilirsiniz bir koleksiyon ve bilgileri görüntülemek için Yönetim sınıfı aracılığıyla döngü.Bu kod Visual Studio. NET'in çalıştırmakta olduğunuz System.Management bir proje başvurusu ekleyin.Aşağıdaki örnek, RSReportServer.config yapılandırma dosyası C:\Program Files\Microsoft SQL Server\MSRS10 bulunduğunu varsayar. <Instancename>\Reporting Services\ReportServer\bin. Açıklamaları için System.Management sınıfındaki yöntemleri bulunabilir Microsoft Visual Studio .NET SDK.

WMI örnek üzerinden Numaralandırılacak sunucusu kurulumları raporunuz hakkında bilgi bulma, tercih edilen yolu olan koleksiyon.Aşağıdaki örnek, bir grup oluşturarak ve özelliklerini görüntülemek için topluluk içinde döngü, her rapor sunucusu örneğinin özellikleri bulmak gösterilmiştir.

Imports System
Imports System.Management
Imports System.IO

Module Module1
    Sub Main()
        Const WmiNamespace As String = "\\<ServerName>\root\Microsoft\SqlServer\ReportServer\<InstanceName>\v10\Admin"
        Const WmiRSClass As String = _
           "\\<ServerName>\root\Microsoft\SqlServer\ReportServer\<InstanceName>\v10\admin:MSReportServer_ConfigurationSetting"

        Dim serverClass As ManagementClass
        Dim scope As ManagementScope
        scope = New ManagementScope(WmiNamespace)
        'Connect to the Reporting Services namespace.
        scope.Connect()

        'Create the server class.
        serverClass = New ManagementClass(WmiRSClass)
        'Connect to the management object.
        serverClass.Get()
        If serverClass Is Nothing Then Throw New Exception("No class found")

        'Loop through the instances of the server class.
        Dim instances As ManagementObjectCollection = serverClass.GetInstances()
        Dim instance As ManagementObject
        For Each instance In instances
            Console.Out.WriteLine("Instance Detected")
            Dim instProps As PropertyDataCollection = instance.Properties
            Dim prop As PropertyData
            For Each prop In instProps
                Dim name As String = prop.Name
                Dim val As Object = prop.Value
                Console.Out.Write("Property Name: " + name)
                If val Is Nothing Then
                    Console.Out.WriteLine("     Value: <null>")
                Else
                    Console.Out.WriteLine("     Value: " + val.ToString())
                End If
            Next
        Next

        Console.WriteLine("--- Press any key ---")
        Console.ReadKey()


    End Sub
End Module
using System;
using System.Management;
using System.IO;
[assembly: CLSCompliant(true)]

class Class1
{
    [STAThread]
    static void Main(string[] args)
    {
        const string WmiNamespace = @"\\<ServerName>\root\Microsoft\SqlServer\ReportServer\<InstanceName>\v10\Admin";
        const string WmiRSClass =
          @"\\<ServerName>\root\Microsoft\SqlServer\ReportServer\<InstanceName>\v10\admin:MSReportServer_ConfigurationSetting";
        ManagementClass serverClass;
        ManagementScope scope;
        scope = new ManagementScope(WmiNamespace);

        // Connect to the Reporting Services namespace.
        scope.Connect();
        // Create the server class.
        serverClass = new ManagementClass(WmiRSClass);
        // Connect to the management object.
        serverClass.Get();
        if (serverClass == null)
            throw new Exception("No class found");

        // Loop through the instances of the server class.
        ManagementObjectCollection instances = serverClass.GetInstances();

        foreach (ManagementObject instance in instances)
        {
            Console.Out.WriteLine("Instance Detected");
            PropertyDataCollection instProps = instance.Properties;
            foreach (PropertyData prop in instProps)
            {
                string name = prop.Name;
                object val = prop.Value;
                Console.Out.Write("Property Name: " + name);
                if (val != null)
                    Console.Out.WriteLine("     Value: " + val.ToString());
                else
                    Console.Out.WriteLine("     Value: <null>");
            }
        }
        Console.WriteLine("\n--- Press any key ---");
        Console.ReadKey();
    }
}

rapor sunucusu ve Rapor Yöneticisi, okuma veya değiştirilen özellikleri hakkında daha fazla bilgi için bkz: Hizmetleri WMI sağlayıcısı kitaplığı bildirdiği için. rapor sunucusu için belirli özellikler hakkında daha fazla bilgi için bkz: MSReportServer_ConfigurationSetting sınıfı. Varsayılan yükleme yapılandırma dosyaları hakkında daha fazla bilgi için bkz: Yapılandırma dosyaları (Reporting Services).