InstrumentationManager Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce i metodi per gestire la durata e il modello usati per i provider disaccoppiati.
Nota: le librerie .NET di WMI sono ora considerate in stato finale e non saranno disponibili altri sviluppi, miglioramenti o aggiornamenti per i problemi non correlati alla sicurezza che interessano queste librerie. Per tutte le nuove attività di sviluppo devono essere usate le API MI.
public ref class InstrumentationManager abstract sealed
public static class InstrumentationManager
type InstrumentationManager = class
Public Class InstrumentationManager
- Ereditarietà
-
InstrumentationManager
Esempio
Nell'esempio seguente viene illustrato come usare il modello publish/revoke. Vengono create e pubblicate due istanze della classe router. Successivamente vengono revocati.
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;
}
}
Nell'esempio successivo viene usato il metodo di callback di registrazione per esporre la classe RouterNew.
public int MainNew(string[] args)
{
InstrumentationManager.RegisterType(typeof(RouterNew));
// ....
InstrumentationManager.UnRegisterType(typeof(RouterNew));
return 0;
}
Commenti
I provider disaccoppiati sono ospitati da un'applicazione. L'applicazione può usare due metodi per rendere disponibili istanze delle classi WMI: publish/revoke o il metodo di callback. Il metodo di callback usa i RegisterType metodi e UnregisterType .
Nel modello di pubblicazione/revoca, l'infrastruttura WMI fornisce il comportamento predefinito per molti dei metodi che è necessario scrivere manualmente nel metodo di callback. Questi includono l'enumerazione e i metodi di associazione. In questo modello l'applicazione crea istanze e le pubblica. L'applicazione è responsabile della verifica del rispetto delle proprietà chiave delle classi. L'applicazione è anche responsabile dell'eliminazione delle istanze.
Nel modello di callback, l'infrastruttura WMI prevede che l'applicazione disponga di metodi che gestiscono l'enumerazione, l'associazione e qualsiasi altro metodo necessario per implementare la funzionalità del provider. Chiama l'applicazione per questa funzionalità e ha esito negativo se non esiste o non è implementato correttamente. L'applicazione registra il tipo delle classi WMI con l'infrastruttura chiamando RegisterType e indica che non vuole più le classi WMI esposte chiamando UnregisterType.
Metodi
Publish(Object) |
Crea un'istanza di un provider disponibile all'interno dell'infrastruttura WMI. |
RegisterAssembly(Assembly) |
Registra un assembly con l'infrastruttura WMI. |
RegisterType(Type) |
Registra una classe con l'infrastruttura WMI. |
Revoke(Object) |
Accetta un'istanza di un provider attualmente disponibile e la rende non disponibile all'interno dell'infrastruttura WMI. |
UnregisterAssembly(Assembly) |
Annulla la registrazione di un assembly attualmente registrato con l'infrastruttura WMI. |
UnregisterType(Type) |
Annulla la registrazione di una classe registrata con l'infrastruttura WMI. |