Compartir a través de


Función PdhGetRawCounterArrayA (pdh.h)

Devuelve una matriz de valores sin procesar del contador especificado. Use esta función cuando desee recuperar los valores de contador sin procesar de un contador que contenga un carácter comodín para el nombre de instancia.

Sintaxis

PDH_FUNCTION PdhGetRawCounterArrayA(
  [in]      PDH_HCOUNTER            hCounter,
  [in, out] LPDWORD                 lpdwBufferSize,
  [out]     LPDWORD                 lpdwItemCount,
  [out]     PPDH_RAW_COUNTER_ITEM_A ItemBuffer
);

Parámetros

[in] hCounter

Identificador del contador para cuyos valores de instancia sin procesar actuales desea recuperar. La función PdhAddCounter devuelve este identificador.

[in, out] lpdwBufferSize

Tamaño del búfer ItemBuffer , en bytes. Si es cero en la entrada, la función devuelve PDH_MORE_DATA y establece este parámetro en el tamaño de búfer necesario. Si el búfer es mayor que el tamaño necesario, la función establece este parámetro en el tamaño real del búfer que se usó. Si el tamaño especificado en la entrada es mayor que cero pero menor que el tamaño necesario, no debe confiar en el tamaño devuelto para reasignar el búfer.

[out] lpdwItemCount

Número de valores de contador sin procesar en el búfer ItemBuffer .

[out] ItemBuffer

Búfer asignado por el autor de la llamada que recibe la matriz de estructuras de PDH_RAW_COUNTER_ITEM ; las estructuras contienen los valores de contador de instancia sin procesar. Se establece en NULL si lpdwBufferSize es cero.

Valor devuelto

Si la función se ejecuta correctamente, devuelve ERROR_SUCCESS.

Si se produce un error en la función, el valor devuelto es un código de error del sistema o un código de error PDH. A continuación se muestran los valores posibles.

Código devuelto Descripción
PDH_MORE_DATA
El búfer ItemBuffer no es lo suficientemente grande como para contener el nombre del objeto. Este valor devuelto se espera si lpdwBufferSize es cero en la entrada. Si el tamaño especificado en la entrada es mayor que cero pero menor que el tamaño necesario, no debe confiar en el tamaño devuelto para reasignar el búfer.
PDH_INVALID_ARGUMENT
Un parámetro no es válido o tiene un formato incorrecto. Por ejemplo, en algunas versiones podría recibir este error si el tamaño especificado en la entrada es mayor que cero, pero menor que el tamaño necesario.
PDH_INVALID_HANDLE
El identificador de contador no es válido.

Comentarios

Debe llamar a esta función dos veces, la primera vez que obtenga el tamaño de búfer necesario (establezca ItemBuffer en NULL y lpdwBufferSize en 0) y la segunda vez para obtener los datos.

Los datos del contador se bloquean durante la llamada a PdhGetRawCounterArray para evitar cualquier cambio durante el procesamiento de la llamada.

Nota

El encabezado pdh.h define PdhGetRawCounterArray como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado pdh.h
Library Pdh.lib
Archivo DLL Pdh.dll

Consulte también

PDH_RAW_COUNTER_ITEM

PdhCalculateCounterFromRawValue

PdhGetFormattedCounterArray

PdhGetFormattedCounterValue