Freigeben über


CounterInitialize-Funktion

Registriert den Anbieter und initialisiert die Indikatorensätze.

Syntax

ULONG WINAPI CounterInitialize(void);

Parameter

Diese Funktion besitzt keine Parameter.

Rückgabewert

Gibt ERROR_SUCCESS nach Erfolg zurück. Andernfalls ein Win32-Standardfehlercode.

Bemerkungen

Ihr Anbieter ruft diese Funktion auf. Die Funktion enthält Aufrufe der PerfStartProvider-Funktion und der PerfSetCounterSetInfo-Funktion .

Das CTRPP-Tool generiert diese Inlinefunktion, wenn Sie das Argument -o angeben. Der Name der Funktion enthält eine Präfixzeichenfolge , wenn Sie das Argument -prefix angeben.

Wenn Sie die Argumente -MemoryRoutines oder -NotificationCallback angeben (oder das Rückrufattribut für das provider-Element angeben), ändert sich die CounterInitialize-Signatur wie folgt:

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

Erläuterungen:

NotificationCallback

Der Name Ihrer ControlCallback-Rückruffunktion , die Sie implementieren, um Benachrichtigungen über Consumeranforderungen zu erhalten (z. B. Anforderungen zum Hinzufügen oder Entfernen von Leistungsindikatoren aus der Abfrage). Legen Sie auf NULL fest, wenn Sie die ControlCallback-Rückruffunktion nicht implementieren.

MemoryAllocationFunction

Der Name Ihrer AllocateMemory-Rückruffunktion , die PERFLIB aufruft, um Arbeitsspeicher zuzuweisen. Legen Sie auf NULL fest, wenn Sie das Argument -MemoryRoutines nicht angegeben haben.

MemoryFreeFunction

Der Name Ihrer FreeMemory-Rückruffunktion , die PERFLIB aufruft, um den zugeordneten Arbeitsspeicher mithilfe der AllocateMemory-Funktion freizugeben . Legen Sie auf NULL fest, wenn MemoryAllocationFunctionNULL ist.

MemoryFunctionContext

Kontextinformationen, die an Ihre Speicherbelegung und freie Routinen übergeben werden sollen. Kann NULL sein.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2008 R2 [nur Desktop-Apps]