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 metodi che gestiscono la durata e il modello usati per i provider disaccoppiati.
Nota: le librerie di .NET WMI sono ora considerate in stato finale e non saranno disponibili ulteriori sviluppi, miglioramenti o aggiornamenti per problemi non correlati alla sicurezza che interessano queste librerie.
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 di pubblicazione/revoca. Vengono create e pubblicate due istanze della classe router. Vengono revocati in un secondo momento.
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 seguente 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. Due metodi possono essere usati dall'applicazione 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 un 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 di garantire che le proprietà chiave delle classi siano rispettate. 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
| Nome | Descrizione |
|---|---|
| Publish(Object) |
Rende disponibile un'istanza di un provider 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 lo 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. |