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;  
}  

注釈

分離されたプロバイダーは、アプリケーションによってホストされます。 WMI クラスのインスタンスを使用できるようにするには、アプリケーションで発行/取り消しまたはコールバック メソッドの 2 つのメソッドを使用できます。 コールバック メソッドでは、 メソッドと 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 インフラストラクチャに登録されたクラスの登録を解除します。

適用対象