Función PdhGetCounterInfoA (pdh.h)

Recupera información sobre un contador, como el tamaño de los datos, el tipo de contador, la ruta de acceso y los valores de datos proporcionados por el usuario.

Sintaxis

PDH_FUNCTION PdhGetCounterInfoA(
  [in]      PDH_HCOUNTER        hCounter,
  [in]      BOOLEAN             bRetrieveExplainText,
  [in, out] LPDWORD             pdwBufferSize,
  [out]     PPDH_COUNTER_INFO_A lpBuffer
);

Parámetros

[in] hCounter

Identificador del contador desde el que desea recuperar información. La función PdhAddCounter devuelve este identificador.

[in] bRetrieveExplainText

Determina si se recupera texto de explicación. Si establece este parámetro en TRUE, se recupera el texto de explicación del contador. Si establece este parámetro en FALSE, el campo del búfer devuelto es NULL.

[in, out] pdwBufferSize

Tamaño del búfer lpBuffer , 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] lpBuffer

Búfer asignado por el autor de la llamada que recibe una estructura de PDH_COUNTER_INFO . La estructura es de longitud variable, porque los datos de cadena se anexan al final de la parte de formato fijo de la estructura. Esto se hace para que todos los datos se devuelvan en un único búfer asignado por el autor de la llamada. Establezca en NULL si pdwBufferSize 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_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.
PDH_MORE_DATA
El búfer lpBuffer es demasiado pequeño para contener la información del contador. Este valor devuelto se espera si pdwBufferSize 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.

Comentarios

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

Nota

El encabezado pdh.h define PdhGetCounterInfo 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_COUNTER_INFO