Share via


Función PerfSetCounterRefValue (perflib.h)

Novedades el valor de un contador cuyo valor es un puntero a los datos reales. Los proveedores usan esta función.

Sintaxis

ULONG PerfSetCounterRefValue(
  [in] HANDLE                    Provider,
  [in] PPERF_COUNTERSET_INSTANCE Instance,
  [in] ULONG                     CounterId,
  [in] PVOID                     Address
);

Parámetros

[in] Provider

Identificador del proveedor. Use la variable handle que generó la herramienta CTRPP automáticamente. Para obtener el nombre de la variable, vea el atributo symbol del elemento provider .

Windows Vista: La función PerfStartProvider devuelve el identificador.

[in] Instance

Estructura PERF_COUNTERSET_INSTANCE que contiene la instancia del conjunto de contadores. La función PerfCreateInstance devuelve este puntero.

[in] CounterId

Identificador que identifica de forma única el contador que se va a actualizar en el bloque de instancia. El identificador se define en el atributo id del elemento counter y debe coincidir con el miembro CounterId de una de las estructuras de PERF_COUNTER_INFO del bloque de instancia. Use la constante de id. de contador que la herramienta CTRPP generó automáticamente. Para obtener el nombre de la constante, vea el atributo symbol del elemento counter .

Windows Vista: La constante id. de contador no está disponible.

[in] Address

Puntero a los datos reales del contador.

Si es NULL, el consumidor recibe ERROR_NO_DATA.

Para indicar que se tiene acceso a los datos del contador por referencia, la declaración de contador del manifiesto debe incluir un elemento counterAttribute cuyo atributo de nombre esté establecido en "reference".

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.

Comentarios

Se trata de una función útil para especificar una referencia a los datos de contador sin procesar. Para actualizar la referencia a los datos de contador sin procesar usted mismo, use el miembro Offset de la estructura PERF_COUNTER_INFO para acceder al valor del contador de un contador específico. El miembro Attrib debe incluir la marca PERF_ATTRIB_BY_REFERENCE. El bloque de estructura PERF_COUNTERSET_INSTANCE contiene una o varias estructuras de información de contadores.

Según el tipo de contador, el puntero debe hacer referencia a un entero de 4 bytes o de 8 bytes sin signo. Al recopilar los datos del contador, PERFLIB desreferencia el puntero y devuelve los datos reales.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado perflib.h
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

PerfSetULongCounterValue

PerfSetULongLongCounterValue