Compartilhar via


Função CounterInitialize

Registra o provedor e inicializa os conjuntos de contadores.

Sintaxe

ULONG WINAPI CounterInitialize(void);

Parâmetros

Essa função não tem parâmetros.

Valor retornado

Retorna ERROR_SUCCESS em caso de êxito; caso contrário, um código de erro padrão do Win32.

Comentários

Seu provedor chama essa função. A função inclui chamadas para a função PerfStartProvider e a função PerfSetCounterSetInfo .

A ferramenta CTRPP gera essa função embutida quando você especifica o argumento -o . O nome da função incluirá uma cadeia de caracteres de prefixo se você especificar o argumento -prefix .

Se você especificar os argumentos -MemoryRoutines ou -NotificationCallback (ou especificar o atributo de retorno de chamada para o elemento provider ), a assinatura CounterInitialize será alterada para o seguinte:

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

onde:

NotificationCallback

O nome da função de retorno de chamada ControlCallback que você implementa para receber notificação de solicitações do consumidor (por exemplo, solicitações para adicionar ou remover contadores da consulta). Defina como NULL se você não implementar a função de retorno de chamada ControlCallback .

MemoryAllocationFunction

O nome da função de retorno de chamada AllocateMemory que o PERFLIB chama para alocar memória. Defina como NULL se você não especificou o argumento -MemoryRoutines .

MemoryFreeFunction

O nome da função de retorno de chamada FreeMemory que o PERFLIB chama para liberar a memória alocada usando a função AllocateMemory . Defina como NULL se MemoryAllocationFunction for NULL.

MemoryFunctionContext

Informações de contexto a serem passadas para sua alocação de memória e rotinas livres. Pode ser NULL.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2008 R2 [somente aplicativos da área de trabalho]