Función PdhGetDefaultPerfCounterHW (pdh.h)

Recupera el nombre del contador predeterminado para el objeto especificado. Este nombre se puede usar para establecer la selección inicial del contador en el cuadro de diálogo Examinar contador.

Esta función es idéntica a PdhGetDefaultPerfCounter, salvo que admite el uso de identificadores para orígenes de datos.

Sintaxis

PDH_FUNCTION PdhGetDefaultPerfCounterHW(
  [in]      PDH_HLOG hDataSource,
  [in]      LPCWSTR  szMachineName,
  [in]      LPCWSTR  szObjectName,
  [out]     LPWSTR   szDefaultCounterName,
  [in, out] LPDWORD  pcchBufferSize
);

Parámetros

[in] hDataSource

Debe ser NULL.

Si especifica un identificador de archivo de registro, szDefaultCounterName será una cadena nula .

[in] szMachineName

Cadena terminada en NULL que especifica el nombre del equipo usado para comprobar el nombre del objeto. Si es NULL, el equipo local se usa para comprobar el nombre.

[in] szObjectName

Cadena terminada en NULL que especifica el nombre del objeto cuyo nombre de contador predeterminado desea recuperar.

[out] szDefaultCounterName

Búfer asignado por el autor de la llamada que recibe el nombre del contador predeterminado terminado en null. Se establece en NULL si pcchBufferSize es cero.

[in, out] pcchBufferSize

Tamaño del búfer szDefaultCounterName , en TCHAR. 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.

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 szDefaultCounterName es demasiado pequeño para contener el nombre del contador. Este valor devuelto se espera si pcchBufferSize 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 obligatorio no es válido. 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_MEMORY_ALLOCATION_FAILURE
No se puede asignar memoria para completar la función.
PDH_CSTATUS_NO_MACHINE
El equipo especificado está sin conexión o no está disponible.
PDH_CSTATUS_NO_COUNTERNAME
No se puede leer ni encontrar el nombre del contador predeterminado.
PDH_CSTATUS_NO_OBJECT
No se encontró el objeto especificado.
PDH_CSTATUS_NO_COUNTER
El objeto no especificó un contador predeterminado.

Comentarios

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

Nota

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

PdhBindInputDataSource

PdhBrowseCountersH

PdhGetDefaultPerfObjectH