次の方法で共有


InstrumentationManager クラス

定義

分離プロバイダーで使用される有効期間とモデルを管理するメソッドを提供します。

注: WMI .NET ライブラリは最終的な状態と見なされます。これらのライブラリに影響を与えるセキュリティ以外に関連する問題については、さらなる開発、機能拡張、または更新は利用できません。 MI API は新しい開発すべてに使用する必要があります。

public ref class InstrumentationManager abstract sealed
public static class InstrumentationManager
type InstrumentationManager = class
Public Class InstrumentationManager
継承
InstrumentationManager

次の例では、発行/取り消しモデルを使用する方法を示します。 ルーター クラスの 2 つのインスタンスが作成され、発行されます。 これらは後で取り消されます。

public class Sample_InstanceProvider
{
    public int Main (string[] args)
    {
        var r_one = new Router();
        r_one.Name = "one";
        InstrumentationManager.Publish(r_one);
        var r_two = new Router ();
        r_two.Name = "two";
        InstrumentationManager.Publish(r_two);
        // ....
        InstrumentationManager.Revoke(r_one);
        InstrumentationManager.Revoke(r_two);
        return 0;
    }
}

次の例では、登録のコールバック メソッドを使用して RouterNew クラスを公開します。

public int MainNew(string[] args)
{
    InstrumentationManager.RegisterType(typeof(RouterNew));
    // ....
    InstrumentationManager.UnRegisterType(typeof(RouterNew));
    return 0;
}

注釈

分離されたプロバイダーは、アプリケーションによってホストされます。 アプリケーションで 2 つのメソッドを使用して、WMI クラスのインスタンスを公開/取り消しまたはコールバック メソッドで使用できます。 コールバック メソッドでは、 メソッドと UnregisterType メソッドがRegisterType使用されます。

発行/取り消しモデルでは、WMI インフラストラクチャは、コールバック メソッドで自分で記述する必要がある多くのメソッドの既定の動作を提供します。 これには、列挙メソッドとバインド メソッドが含まれます。 このモデルでは、アプリケーションによってインスタンスが作成され、発行されます。 アプリケーションは、クラスの主要なプロパティが確実に尊重されるようにする役割を担います。 アプリケーションは、インスタンスの削除も担当します。

コールバック モデルでは、WMI インフラストラクチャでは、アプリケーションに、列挙、バインディング、およびプロバイダーの機能を実装するために必要なその他のメソッドを処理するメソッドが必要です。 この機能のためにアプリケーションを呼び出し、存在しないか、適切に実装されていない場合は失敗します。 アプリケーションは、 を呼び出して WMI クラスの型をインフラストラクチャに登録し、 を呼び出RegisterTypeUnregisterTypeして WMI クラスを公開しなくなったことを示します。

メソッド

Publish(Object)

WMI インフラストラクチャ内で使用可能なプロバイダーのインスタンスを作成します。

RegisterAssembly(Assembly)

アセンブリを WMI インフラストラクチャに登録します。

RegisterType(Type)

クラスを WMI インフラストラクチャに登録します。

Revoke(Object)

現在利用可能なプロバイダーのインスタンスを実行し、WMI インフラストラクチャ内で利用できなくします。

UnregisterAssembly(Assembly)

WMI インフラストラクチャに現在登録されているアセンブリの登録を解除します。

UnregisterType(Type)

WMI インフラストラクチャに登録されたクラスの登録を解除します。

適用対象