Función CounterInitialize

Registra el proveedor e inicializa los conjuntos de contadores.

Sintaxis

ULONG WINAPI CounterInitialize(void);

Parámetros

Esta función no tiene parámetros.

Valor devuelto

Devuelve ERROR_SUCCESS si se realiza correctamente; de lo contrario, un código de error Win32 estándar.

Comentarios

El proveedor llama a esta función. La función incluye llamadas a la función PerfStartProvider y a la función PerfSetCounterSetInfo .

La herramienta CTRPP genera esta función insertada al especificar el argumento -o . El nombre de la función incluye una cadena de prefijo si especifica el argumento -prefix .

Si especifica los argumentos -MemoryRoutines o -NotificationCallback (o especifica el atributo de devolución de llamada para el elemento provider ), la firma CounterInitialize cambia a lo siguiente:

ULONG WINAPI CounterInitialize(
    __in_opt PERFLIBREQUEST NotificationCallback,
    __in_opt PERF_MEM_ALLOC MemoryAllocationFunction,
    __in_opt PERF_MEM_FREE MemoryFreeFunction,
    __inout_opt PVOID MemoryFunctionContext
);

donde,

NotificationCallback

El nombre de la función de devolución de llamada ControlCallback que implemente para recibir notificaciones de solicitudes de consumidor (por ejemplo, solicitudes para agregar o quitar contadores de la consulta). Establezca en NULL si no implementa la función de devolución de llamada ControlCallback .

MemoryAllocationFunction

Nombre de la función de devolución de llamada AllocateMemory a la que PERFLIB llama para asignar memoria. Establezca en NULL si no especificó el argumento -MemoryRoutines .

MemoryFreeFunction

Nombre de la función de devolución de llamada FreeMemory a la que PERFLIB llama para liberar la memoria asignada mediante la función AllocateMemory . Se establece en NULL si MemoryAllocationFunction es NULL.

MemoryFunctionContext

Información de contexto que se va a pasar a la asignación de memoria y a las rutinas libres. Puede ser NULL.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2008 R2 [solo aplicaciones de escritorio]