Compartir a través de


API COM para WMI

Puede usar la API del modelo de objetos componentes de WMI (COM) para escribir aplicaciones cliente de administración o crear un nuevo proveedor de WMI. La referencia de API COM proporciona información para administradores avanzados del sistema, así como para desarrolladores que escriben aplicaciones cliente y proveedor.

Para obtener más información sobre cómo escribir aplicaciones de administración empresarial de WMI, consulte Creación de una aplicación WMI mediante C++. Para obtener más información sobre cómo escribir un proveedor WMI, consulte Proporcionar datos a WMI.

Nota

WMI solo admite el desarrollo de C++ con Microsoft Visual C++ versión 6.0 y sistemas de desarrollo posteriores. Sin embargo, también puede usar otros compiladores como los de Borland y Watcom.

 

Cada uno de los distintos objetos WMI hereda de una interfaz heredada en última instancia de la interfaz IUnknown. COM determina cómo los implementadores de objetos o las interfaces controlan tareas como la administración de memoria, la administración de parámetros y el multithreading. Al cumplir con COM, la API COM para WMI garantiza que admite la funcionalidad proporcionada por las interfaces de cada objeto WMI.

Se accede a WMI a través de las siguientes interfaces COM específicas de WMI.

Interfaz Descripción
IEnumWbemClassObject Enumerador que funciona con objetos de tipo IWbemClassObject. Es similar a los enumeradores COM estándar, como IEnumVariant.
IMofCompiler Implementada por Mofd.dll, esta interfaz proporciona una interfaz COM que usa el compilador MOF y cualquier otra aplicación que compile archivos MOF.
IUnsecuredApartment Se usa para simplificar el proceso de realizar llamadas asincrónicas desde un proceso de cliente.
IWbemBackupRestore Realiza una copia de seguridad y restaura el contenido del repositorio WMI.
IWbemCallResult Se usa para llamadas de semisincrónicas de la interfazdeIWbemServices. Al realizar estas llamadas, el método IWbemServices llamado devuelve inmediatamente, junto con un objeto IWbemCallResult.
IWbemCausalityAnalysis Realiza un seguimiento de las solicitudes secundarias que se generan a partir de una solicitud primaria.
IWbemClassObject Contiene y manipula las definiciones de clase y las instancias de objeto de clase. Los desarrolladores no necesitan implementar esta interfaz; WMI proporciona su implementación.
IWbemConfigureRefresher Usado por el código de cliente para agregar o quitar enumeradores, objetos y actualizadores anidados en un actualizador.
IWbemContext Opcionalmente se usa para comunicar información de contexto adicional a los proveedores al enviar IWbemServices llamadas a administración de Windows.
IWbemDecoupledBasicEventProvider Registra proveedores desacoplados con WMI.
IWbemDecoupledRegistrar Asocia proveedores desacoplados con WMI. Esta interfaz permite que un proveedor hospedado por procesos defina la duración de la interoperabilidad de la interfaz y coexista con otros proveedores.
IWbemEventConsumerProvider Proporciona la interfaz principal para un proveedor de consumidores de eventos. A través de esta interfaz y el método FindConsumer, un proveedor de consumidores de eventos puede indicar qué consumidores de eventos deben recibir un evento determinado.
IWbemEventProvider Se usa para iniciar la comunicación con un proveedor de eventos.
IWbemEventProviderQuerySink Opcionalmente, los proveedores de eventos que desean saber qué tipos de filtros de consulta de eventos están activos actualmente para optimizar el rendimiento.
IWbemEventProviderSecurity Opcionalmente, los proveedores de eventos que desean restringir el acceso de los consumidores a su evento.
IWbemEventSink Inicia la comunicación con un proveedor de eventos mediante un conjunto restringido de consultas. Esta interfaz amplía IWbemObjectSink, lo que proporciona nuevos métodos que tratan sobre la seguridad y el rendimiento.
IWbemHiPerfProvider Permite a los proveedores proporcionar objetos y enumeradores actualizables.
IWbemHiPerfEnum Se usa en las operaciones del actualizador para proporcionar acceso rápido a las enumeraciones de objetos de instancia.
IWbemLocator Obtiene el puntero de espacio de nombres inicial al IWbemServices interfaz para WMI en un equipo host específico.
IWbemObjectAccess Proporciona acceso a los métodos y propiedades de un objeto . Un objetoIWbemObjectAccess es un contenedor para una instancia actualizada por un refresher.
IWbemObjectSink Se usa para recibir los resultados de IWbemServices y ciertos tipos de notificaciones de eventos.
IWbemObjectTextSrc Se usa para traducir IWbemClassObject instancias a y desde formatos de texto diferentes.
IWbemPropertyProvider Admite la recuperación y actualización de propiedades individuales en una instancia de una clase WMI.
IWbemProviderIdentity Implementado por un proveedor de eventos si el proveedor se registra usando más de un Nombre (varias instancias de __Win32Provider) con el mismo valor CLSID. La clase proporciona un mecanismo para distinguir qué proveedor con nombre se debe usar.
IWbemProviderInit Se usa para inicializar proveedores.
IWbemProviderInitSink Implementado por WMI y llamado por proveedores para notificar el estado de inicialización.
IWbemQualifierSet Actúa como contenedor para todo el conjunto de calificadores con nombre para una sola propiedad o un objeto completo (una clase o instancia).
IWbemQuery Proporciona un punto de entrada a través del cual se puede analizar una consulta de lenguaje de consulta WMI (WQL).
IWbemRefresher Proporciona un punto de entrada a través del cual se pueden actualizar objetos actualizables, como enumeradores o objetos de actualizador.
IWbemServices Los clientes y proveedores usan para acceder a los servicios WMI. WMI implementa la interfaz solo y es la interfaz WMI principal.
IWbemStatusCodeText Extrae descripciones de cadenas de texto de códigos de error o el nombre del subsistema donde se produjo el error.
IWbemUnboundObjectSink Implementado por todos los consumidores de eventos lógicos. Es una interfaz de receptor simple que acepta la entrega de objetos de evento.

 

Nota

Muchas de las funciones COM de WMI devuelven códigos de error numéricos que se documentan como constantes con nombre. Estas constantes se definen en Wbemcli.h en la carpeta PSDK WMI\Include. Para obtener más información, vea códigos de retorno de WMI.

 

Para obtener más información sobre los temas siguientes para la programación COM, vea de desarrollo de componentes:

  • Interfaces y diseño de objetos.
  • Implementación de IUnknown.
  • Administración de memoria
  • Control del recuento de referencias.

de referencia de WMI