Inizializzazione di un provider
Una delle prime attività necessarie per un provider è il processo di inizializzazione, che copre tutte le attività che il provider deve eseguire che consente di inviare e ricevere informazioni da WMI, controllare un oggetto gestito ed eseguire altre attività. Ogni tipo di provider ha un set diverso di attività che deve eseguire e ha un set di interfacce univoche.
Tuttavia, tutti i provider inizializzano tramite l'interfaccia IWbemProviderInit e informano WMI dello stato di inizializzazione tramite l'interfaccia IWbemProviderInitSink .
La procedura seguente descrive come inizializzare un provider.
Per inizializzare un provider
Implementare IWbemProviderInit::Initialize per il provider.
Quando WMI determina che un client richiede i servizi di un provider, WMI carica il provider chiamando il metodo IWbemProviderInit::Initialize .
Implementare qualsiasi interfaccia univoca per il tipo di provider.
Informare WMI che il provider viene completato con l'inizializzazione chiamando IWbemProviderInitSink::SetStatus.
Tutte le implementazioni di IWbemProviderInit::Initialize devono chiamare IWbemProviderInitSink::SetStatus per segnalare lo stato di inizializzazione a WMI. Il metodo SetStatus consente a WMI di determinare se un provider è pronto per ricevere richieste e il tipo di richieste che il provider è pronto per la ricezione.
La procedura seguente descrive come segnalare un'inizializzazione riuscita.
Per segnalare un'inizializzazione riuscita
Impostare il parametro IStatus di SetStatus su WBEM_S_INITIALIZED.
Restituisce WBEM_S_INITIALIZED, un provider indica un'idoneità per gestire le richieste da applicazioni, WMI e altri provider. Dopo aver ricevuto WBEM_S_INITIALIZED, WMI effettua una chiamata al metodo IWbemProviderInit::QueryInterface nel provider. Questa query recupera un puntatore all'interfaccia primaria del provider.
La procedura seguente descrive come segnalare un errore durante l'inizializzazione.
Per segnalare un errore durante l'inizializzazione
Impostare il parametro IStatus di SetStatus su WBEM_E_FAILED. Provider di viste WMI che restituiscono WBEM_E_FAILED come non funzionali.
WMI rilascia il puntatore IWbemProviderInit dopo che WMI ha ottenuto un puntatore all'interfaccia primaria del provider o dopo l'inizializzazione non riuscita.
Argomenti correlati