ManagementClass.GetSubclasses 方法

定義

傳回類別所有衍生類別的集合。

多載

GetSubclasses()

傳回類別所有子類別的集合。

GetSubclasses(EnumerationOptions)

使用指定的選項,擷取類別的子類別。

GetSubclasses(ManagementOperationObserver)

以非同步方式傳回衍生自此類別之所有類別的集合。

GetSubclasses(ManagementOperationObserver, EnumerationOptions)

使用指定的選項,以非同步方式擷取衍生自此類別的所有類別。

備註

.NET Framework 安全性

完全信任立即呼叫者。 這個成員無法供部分信任的程式碼使用。 如需詳細資訊,請參閱 使用部分信任程式碼的程式庫

GetSubclasses()

傳回類別所有子類別的集合。

public:
 System::Management::ManagementObjectCollection ^ GetSubclasses();
public System.Management.ManagementObjectCollection GetSubclasses ();
member this.GetSubclasses : unit -> System.Management.ManagementObjectCollection
Public Function GetSubclasses () As ManagementObjectCollection

傳回

ManagementObject 物件的集合,表示 WMI 類別的子類別。

範例

下列範例會 GetSubclasses 使用 方法來將子類別列出至 CIM_LogicalDisk 類別。 如需詳細資訊,請參閱 CIM_LogicalDisk

using System;
using System.Management;

public class Sample
{
    public static void Main()
    {
        ManagementClass c =
            new ManagementClass("CIM_LogicalDisk");

        foreach (ManagementClass r in c.GetSubclasses())
        {
            Console.WriteLine(
                "Instances of {0} are sub-classes",
                r["__CLASS"]);
        }

        foreach (ManagementClass r in c.GetRelationshipClasses())
        {
            Console.WriteLine(
                "{0} is a relationship class to " +
                c.ClassPath.ClassName,
                r["__CLASS"]);

            foreach (ManagementClass related in c.GetRelatedClasses(
                null, r.ClassPath.ClassName,
                "Association", null, null, null, null))
            {
                Console.WriteLine(
                    "{0} is related to " + c.ClassPath.ClassName,
                    related.ClassPath.ClassName);
            }
        }

        return;
    }
}
Imports System.Management


Class Sample
    Public Overloads Shared Function _
        Main(ByVal args() As String) As Integer

        Dim c As ManagementClass
        c = New ManagementClass("CIM_LogicalDisk")

        For Each r As ManagementClass In c.GetSubclasses()

            Console.WriteLine( _
                "Instances of {0} are sub-classes", _
                r("__CLASS"))
        Next

        For Each r As ManagementClass In c.GetRelationshipClasses()

            Console.WriteLine( _
                "{0} is a relationship class to " & _
                c.ClassPath.ClassName, _
                r("__CLASS"))

            For Each related As ManagementClass In c.GetRelatedClasses( _
                Nothing, r.ClassPath.ClassName, "Association", Nothing, _
                Nothing, Nothing, Nothing)

                Console.WriteLine( _
                    "{0} is related to " & c.ClassPath.ClassName, _
                    related.ClassPath.ClassName)
            Next
        Next


    End Function
End Class

備註

.NET Framework 安全性

完全信任立即呼叫者。 這個成員無法供部分信任的程式碼使用。 如需詳細資訊,請參閱 使用部分信任程式碼的程式庫

適用於

GetSubclasses(EnumerationOptions)

使用指定的選項,擷取類別的子類別。

public:
 System::Management::ManagementObjectCollection ^ GetSubclasses(System::Management::EnumerationOptions ^ options);
public System.Management.ManagementObjectCollection GetSubclasses (System.Management.EnumerationOptions options);
member this.GetSubclasses : System.Management.EnumerationOptions -> System.Management.ManagementObjectCollection
Public Function GetSubclasses (options As EnumerationOptions) As ManagementObjectCollection

參數

options
EnumerationOptions

指定的其他選項,用來擷取類別的子類別。

傳回

ManagementObject 物件的集合,表示 WMI 類別的子類別 (根據指定的選項)。

範例

下列範例示範如何使用建構函式初始化 ManagementClass 變數 ManagementClass ,然後接收傳入建構函式之 WMI 類別的子類別。

using System;
using System.Management;

public class Example
{
    public static void Main()
    {
        EnumerationOptions opt = new EnumerationOptions();
        // Causes return of deep subclasses
        // as opposed to only immediate ones.
        opt.EnumerateDeep = true;
        ManagementObjectCollection subclasses = (new
            ManagementClass("CIM_LogicalDisk")).GetSubclasses(opt);
        foreach(ManagementClass subclass in subclasses)
        {
            Console.WriteLine( "Subclass found: {0}" ,
                subclass["__CLASS"]);
        }

        return;
    }
}
Imports System.Management

Public Class Sample

    Public Shared Function Main(ByVal args() _
        As String) As Integer

        Dim opt As New EnumerationOptions

        ' Causes return of deep subclasses
        ' as opposed to only immediate ones.
        opt.EnumerateDeep = True

        Dim cls As New ManagementClass("CIM_LogicalDisk")
        Dim subclasses As ManagementObjectCollection

        subclasses = cls.GetSubclasses(opt)

        For Each subclass As ManagementClass In subclasses
            Console.WriteLine("Subclass found: {0}", _
                subclass("__CLASS"))
        Next

        Return 0
    End Function
End Class

備註

.NET Framework 安全性

完全信任立即呼叫者。 這個成員無法供部分信任的程式碼使用。 如需詳細資訊,請參閱 使用部分信任程式碼的程式庫

適用於

GetSubclasses(ManagementOperationObserver)

以非同步方式傳回衍生自此類別之所有類別的集合。

public:
 void GetSubclasses(System::Management::ManagementOperationObserver ^ watcher);
public void GetSubclasses (System.Management.ManagementOperationObserver watcher);
member this.GetSubclasses : System.Management.ManagementOperationObserver -> unit
Public Sub GetSubclasses (watcher As ManagementOperationObserver)

參數

watcher
ManagementOperationObserver

要處理非同步作業進度的物件。

備註

.NET Framework 安全性

完全信任立即呼叫者。 這個成員無法供部分信任的程式碼使用。 如需詳細資訊,請參閱 使用部分信任程式碼的程式庫

適用於

GetSubclasses(ManagementOperationObserver, EnumerationOptions)

使用指定的選項,以非同步方式擷取衍生自此類別的所有類別。

public:
 void GetSubclasses(System::Management::ManagementOperationObserver ^ watcher, System::Management::EnumerationOptions ^ options);
public void GetSubclasses (System.Management.ManagementOperationObserver watcher, System.Management.EnumerationOptions options);
member this.GetSubclasses : System.Management.ManagementOperationObserver * System.Management.EnumerationOptions -> unit
Public Sub GetSubclasses (watcher As ManagementOperationObserver, options As EnumerationOptions)

參數

watcher
ManagementOperationObserver

要處理非同步作業進度的物件。

options
EnumerationOptions

要用於衍生類別擷取的其他指定選項。

備註

.NET Framework 安全性

完全信任立即呼叫者。 這個成員無法供部分信任的程式碼使用。 如需詳細資訊,請參閱 使用部分信任程式碼的程式庫

適用於