Condividi tramite


API COM per WMI

È possibile usare l'API COM (Component Object Model) WMI per scrivere applicazioni client di gestione o creare un nuovo provider WMI . Le informazioni di riferimento sull'API COM forniscono informazioni per gli amministratori di sistema avanzati, nonché per gli sviluppatori che scrivono applicazioni client e provider.

Per altre informazioni sulla scrittura di applicazioni di gestione aziendale WMI, vedere Creazione di un'applicazione WMI tramite C++. Per altre informazioni su come scrivere un provider WMI, vedere Fornire dati a WMI.

Nota

WMI supporta solo lo sviluppo C++ con i sistemi di sviluppo Microsoft Visual C++ versione 6.0 e successive. Tuttavia, è anche possibile usare altri compilatori come quelli di Borland e Watcom.

 

Ognuno dei diversi oggetti WMI eredita da un'interfaccia ereditata dall'interfaccia IUnknown. COM determina il modo in cui gli implementatori di oggetti, o le interfacce, gestiscono attività come la gestione della memoria, la gestione dei parametri e il multithreading. Con la conformità a COM, l'API COM per WMI garantisce che supporti le funzionalità fornite dalle interfacce di ogni oggetto WMI.

È possibile accedere a WMI tramite le interfacce COM specifiche di WMI seguenti.

Interfaccia Descrizione
IEnumWbemClassObject Enumeratore che funziona con oggetti di tipo IWbemClassObject. È simile agli enumeratori COM standard, ad esempio IEnumVariant.
IMofCompiler Implementata da Mofd.dll, questa interfaccia fornisce un'interfaccia COM usata dal compilatore MOF e da tutte le altre applicazioni che compilano file MOF.
IUnsecuredApartment Usato per semplificare il processo di esecuzione di chiamate asincrone da un processo client.
IWbemBackupRestore Esegue il backup e ripristina il contenuto del repository WMI.
IWbemCallResult Usato per chiamate semisincrone dell'interfacciaIWbemServices. Quando si effettuano tali chiamate, il metodo IWbemServices chiamato restituisce immediatamente, insieme a un oggetto IWbemCallResult.
IWbemCausalityAnalysis Tiene traccia delle richieste figlio generate da una richiesta padre.
IWbemClassObject Contiene e modifica le definizioni di classe e le istanze dell'oggetto classe. Gli sviluppatori non devono implementare questa interfaccia; WMI fornisce la relativa implementazione.
IWbemConfigureRefresher Usato dal codice client per aggiungere o rimuovere enumeratori, oggetti e aggiornamenti annidati in un aggiornamento.
IWbemContext Facoltativamente usato per comunicare informazioni di contesto aggiuntive ai provider quando si inviano IWbemServices chiamate a Gestione Windows.
IWbemDecoupledBasicEventProvider Registra provider disaccoppiati con WMI.
IWbemDecoupledRegistrar Associa provider disaccoppiati a WMI. Questa interfaccia consente a un provider ospitato da processi di definire la durata di interoperabilità dell'interfaccia e coesistere con altri provider.
IWbemEventConsumerProvider Fornisce l'interfaccia primaria per un provider di consumer di eventi. Tramite questa interfaccia e il metodo FindConsumer, un provider di consumer di eventi può indicare quali consumer di eventi devono ricevere un determinato evento.
IWbemEventProvider Utilizzato per avviare la comunicazione con un provider di eventi.
IWbemEventProviderQuerySink Facoltativamente implementati dai provider di eventi che vogliono conoscere i tipi di filtri di query evento attualmente attivi per ottimizzare le prestazioni.
IWbemEventProviderSecurity Facoltativamente implementata dai provider di eventi che vogliono limitare l'accesso degli utenti al proprio evento.
IWbemEventSink Avvia la comunicazione con un provider di eventi usando un set limitato di query. Questa interfaccia estende IWbemObjectSink, fornendo nuovi metodi che gestiscono sicurezza e prestazioni.
IWbemHiPerfProvider Consente ai provider di fornire oggetti e enumeratori aggiornabili.
IWbemHiPerfEnum Usato nelle operazioni di aggiornamento per fornire accesso rapido alle enumerazioni degli oggetti istanza.
IWbemLocator Ottiene il puntatore dello spazio dei nomi iniziale all'interfacciaIWbemServicesper WMI in un computer host specifico.
IWbemObjectAccess Fornisce l'accesso ai metodi e alle proprietà di un oggetto . Un oggettoIWbemObjectAccessè un contenitore per un'istanza aggiornata da un di aggiornamento.
IWbemObjectSink Usato per ricevere sia i risultati di IWbemServices che di determinati tipi di notifiche degli eventi.
IWbemObjectTextSrc Usato per tradurre istanze di IWbemClassObject in e da formati di testo diversi.
IWbemPropertyProvider Supporta il recupero e l'aggiornamento di singole proprietà in un'istanza di una classe WMI.
IWbemProviderIdentity Implementato da un provider di eventi se il provider si registra usando più di un Name (più istanze di __Win32Provider) con lo stesso valore CLSID . La classe fornisce un meccanismo per distinguere il provider denominato da usare.
IWbemProviderInit Utilizzato per inizializzare i provider.
IWbemProviderInitSink Implementato da WMI e chiamato dai provider per segnalare lo stato di inizializzazione.
IWbemQualifierSet Funge da contenitore per l'intero set di qualificatori denominati per una singola proprietà o un intero oggetto (una classe o un'istanza).
IWbemQuery Fornisce un punto di ingresso tramite il quale è possibile analizzare una query WQL (WMI Query Language).
IWbemRefresher Fornisce un punto di ingresso tramite il quale è possibile aggiornare oggetti aggiornabili, ad esempio enumeratori o oggetti di aggiornamento.
IWbemServices Usato da client e provider per accedere ai servizi WMI. L'interfaccia viene implementata solo da WMI ed è l'interfaccia WMI primaria.
IWbemStatusCodeText Estrae le descrizioni delle stringhe di testo dei codici di errore o il nome del sottosistema in cui si è verificato l'errore.
IWbemUnboundObjectSink Implementato da tutti i consumer di eventi logici. Si tratta di un'interfaccia sink semplice che accetta il recapito di oggetti evento.

 

Nota

Molte delle funzioni COM WMI restituiscono codici di errore numerici documentati come costanti denominate. Queste costanti sono definite in Wbemcli.h nella cartella WMI\Include di PSDK. Per altre informazioni, vedere codici restituiti WMI.

 

Per altre informazioni sugli argomenti seguenti per la programmazione COM, vedere Component Development:

  • Interfacce e progettazione di oggetti.
  • Implementazione di IUnknown.
  • Gestione della memoria
  • Gestione del conteggio dei riferimenti.

di riferimento WMI