Método IWbemHiPerfProvider::GetObjects (wbemprov.h)
El método IWbemHiPerfProvider::GetObjects inserta las propiedades que no son clave de los objetos de la matriz proporcionada. WMI llama a GetObjects en respuesta a una llamada IWbemServices::GetObject . Si un proveedor no implementa GetObjects, WMI intenta atender una solicitud GetObject con una llamada al método IWbemHiPerfProvider::CreateRefreshableObject .
Sintaxis
HRESULT GetObjects(
[in] IWbemServices *pNamespace,
[in] long lNumObjects,
[in, out] IWbemObjectAccess **apObj,
long lFlags,
IWbemContext *pContext
);
Parámetros
[in] pNamespace
Un puntero IWbemServices a Administración de Windows, que puede atender cualquier solicitud realizada por el proveedor. El proveedor debe llamar a AddRef en este puntero si va a volver a llamar a la administración de Windows durante su ejecución.
[in] lNumObjects
Entero que contiene el número de objetos que se van a recuperar.
[in, out] apObj
Puntero a una matriz de objetos IWbemObjectAccess . El método GetObjects inserta las propiedades clave de cada objeto en esta matriz.
lFlags
Reservado. El valor de este parámetro deberá ser 0.
pContext
Normalmente NULL; de lo contrario, un puntero a un objeto IWbemContext requerido por uno o varios proveedores de clases dinámicas. Los valores del objeto de contexto deben especificarse en la documentación específica del proveedor. Para obtener más información sobre este parámetro, vea Realizar llamadas a WMI.
Valor devuelto
Este método devuelve un valor HRESULT que indica el estado de la llamada al método. En la lista siguiente se muestra el valor contenido en un HRESULT.
Comentarios
Los objetos solicitados tendrán rellenadas sus propiedades clave.
Ejemplos
En el ejemplo de código siguiente se describe cómo implementar GetObjects.
HRESULT CMyHiPerfProvider::GetObjects(
/* [in] */IWbemServices *pNamespace,
/* [in] */ long lNumObjects,
/* [in,out] */IWbemObjectAccess **apObj,
/* [in] */long lFlags,
/* [in] */IWbemContext *pCtx
)
{
for ( long i = 0; i < lNumObjects; i++ )
{
// Validate the instance (that is, ensure
// the path is good); if it fails, return
// the error.
// For example, create a method that validates
// the IWbemObjectAccess instance and returns
// false if validation failed.
/*if ( !ValidateInstance( apObj[i] ) )
return WBEM_E_NOT_FOUND;*/
// Fill out the instance.
// For example, create a method that assigns
// a value to the IWbemObjectAccess instance.
/*FillInstance( apObj[i] );*/
}
return WBEM_S_NO_ERROR;
}
Requisitos
Cliente mínimo compatible | Windows Vista |
Servidor mínimo compatible | Windows Server 2008 |
Plataforma de destino | Windows |
Encabezado | wbemprov.h (include Wbemidl.h) |
Library | Wbemuuid.lib |
Archivo DLL | Wmiprvsd.dll |
Consulte también
Desarrollo de un proveedor WMI
Conversión de un proveedor de instancias en un proveedor de alto rendimiento