Interfaz IWbemContext (wbemcli.h)
La interfaz IWbemContext se usa opcionalmente para comunicar información de contexto adicional a los proveedores al enviar llamadas IWbemServices a WMI. Todas las llamadas principales de IWbemServices toman un parámetro opcional que apunta a un objeto de este tipo.
Herencia
La interfaz IWbemContext hereda de la interfaz IUnknown . IWbemContext también tiene estos tipos de miembros:
Métodos
La interfaz IWbemContext tiene estos métodos.
IWbemContext::BeginEnumeration El método IWbemContext::BeginEnumeration restablece la enumeración de todos los valores de contexto del objeto . |
IWbemContext::Clone El método IWbemContext::Clone realiza una copia lógica del objeto IWbemContext actual. Este método puede ser útil cuando se deben realizar muchas llamadas que tienen objetos IWbemContext muy idénticos. |
IWbemContext::D eleteAll El método IWbemContext::D eleteAll quita todos los valores de contexto con nombre del objeto actual, lo que vacía el objeto . |
IWbemContext::D eleteValue El método IWbemContext::D eleteValue elimina un valor de contexto con nombre creado por IWbemContext::SetValue. |
IWbemContext::EndEnumeration El método IWbemContext::EndEnumeration finaliza una secuencia de enumeración que comienza con IWbemContext::BeginEnumeration. Esta llamada no es necesaria, pero se libera lo antes posible cualquier recurso del sistema asociado a la enumeración. |
IWbemContext::GetNames El método IWbemContext::GetNames devuelve una estructura SAFEARRAY de todos los nombres de los valores de contexto con nombre. |
IWbemContext::GetValue El método IWbemContext::GetValue se usa para recuperar un valor de contexto con nombre específico por nombre. |
IWbemContext::Next El método IWbemContext::Next recupera el siguiente valor en una enumeración de todos los valores de contexto que comienzan por IWbemContext::BeginEnumeration. |
IWbemContext::SetValue El método IWbemContext::SetValue crea o sobrescribe un valor de contexto con nombre. |
Comentarios
A menudo, los proveedores dinámicos requieren más información de la especificada en los parámetros normales de un método IWbemServices . Por ejemplo, para manipular cualquier objeto de esquema WMI que proporcione, es posible que un proveedor necesite conocer un nombre de comunidad de Protocolo simple de administración de redes (SNMP) o una base de datos y un nombre de tabla de Lenguaje de consulta estructurado (SQL). Un cliente puede agregar esta información a un objeto IWbemContext y enviar el objeto IWbemContext junto con la llamada como uno de los parámetros.
Los proveedores deben usar objetos de contenido con moderación. Se recomienda que nunca sea necesario. Si un proveedor requiere una gran cantidad de información de contexto altamente específica para responder a una solicitud, todos los clientes deben codificarse para proporcionar esta información, lo que rompe el modelo de acceso uniforme que es la base de WMI. No obstante, en algunos casos no se puede evitar. Por lo tanto, este mecanismo se proporciona para que sea posible acceder a dichos proveedores. Los desarrolladores de estos proveedores deben proporcionar documentación adecuada para que los desarrolladores de software cliente puedan manipular correctamente estos objetos CIM.
Los proveedores que admiten el uso de IWbemContext para permitir a los clientes especificar más información en una solicitud deben restringir los tipos de valores que admiten a los tipos de la lista siguiente:
- VT_I4
- VT_R8
- VT_BOOL
- VT_BSTR
- VT_UNKNOWN
- Cualquiera de los anteriores combinados con VT_ARRAY
La información contenida en un objeto IWbemContext viene determinada por completo por el proveedor subyacente. WMI no usa la información, pero la reenvía al proveedor. Los proveedores deben publicar la información de contexto que requieren para estas solicitudes de servicio.
La aplicación cliente llama a CoCreateInstanceEx para crear un único objeto de contexto. A continuación, llama a SetValue una o varias veces para configurar valores de contexto para el proveedor. Por último, envía el objeto a uno de los métodos IWbemServices , que llama inmediatamente a Release en el objeto de contexto después de que se haya devuelto la llamada. Los demás métodos se usan principalmente por proveedores que reciben el objeto de contexto y tienen que extraer información.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista |
Servidor mínimo compatible | Windows Server 2008 |
Plataforma de destino | Windows |
Encabezado | wbemcli.h (include Wbemidl.h) |
Consulte también
Creación y declaración de una instancia mediante C++