PdhAddCounterA-Funktion (pdh.h)

Fügt der Abfrage den angegebenen Leistungsindikator hinzu.

Syntax

PDH_FUNCTION PdhAddCounterA(
  [in]  PDH_HQUERY   hQuery,
  [in]  LPCSTR       szFullCounterPath,
  [in]  DWORD_PTR    dwUserData,
  [out] PDH_HCOUNTER *phCounter
);

Parameter

[in] hQuery

Handle für die Abfrage, der Sie den Zähler hinzufügen möchten. Dieses Handle wird von der PdhOpenQuery-Funktion zurückgegeben.

[in] szFullCounterPath

Null-terminierte Zeichenfolge, die den Indikatorpfad enthält. Ausführliche Informationen zum Format eines Indikatorpfads finden Sie unter Angeben eines Leistungsindikatorpfads. Die maximale Länge eines Indikatorpfads ist PDH_MAX_COUNTER_PATH.

[in] dwUserData

Benutzerdefinierter Wert. Dieser Wert wird Teil der Zählerinformationen. Um diesen Wert später abzurufen, rufen Sie die PdhGetCounterInfo-Funktion auf, und greifen Sie auf den dwUserData-Member der PDH_COUNTER_INFO-Struktur zu.

[out] phCounter

Handle für den Leistungsindikator, der der Abfrage hinzugefügt wurde. Möglicherweise müssen Sie in nachfolgenden Aufrufen auf dieses Handle verweisen.

Rückgabewert

Gibt ERROR_SUCCESS zurück, wenn die Funktion erfolgreich ist.

Wenn die Funktion fehlschlägt, ist der Rückgabewert ein Systemfehlercode oder ein PDH-Fehlercode. Die folgenden Werte sind möglich.

Rückgabecode Beschreibung
PDH_CSTATUS_BAD_COUNTERNAME
Der Zählerpfad konnte nicht analysiert oder interpretiert werden.
PDH_CSTATUS_NO_COUNTER
Der angegebene Leistungsindikator konnte auf dem Computer oder in der Protokolldatei nicht gefunden werden.
PDH_CSTATUS_NO_COUNTERNAME
Der Zählerpfad ist leer.
PDH_CSTATUS_NO_MACHINE
Der Pfad enthielt keinen Computernamen, und die Funktion konnte den Namen des lokalen Computers nicht abrufen.
PDH_CSTATUS_NO_OBJECT
Das angegebene Objekt kann auf dem Computer oder in der Protokolldatei nicht gefunden werden.
PDH_FUNCTION_NOT_FOUND
Die Berechnungsfunktion, die für diesen Indikator verwendet werden soll, kann nicht ermittelt werden.
PDH_INVALID_ARGUMENT
Mindestens ein Argument ist ungültig.
PDH_INVALID_HANDLE
Das Abfragehandle ist ungültig.
PDH_MEMORY_ALLOCATION_FAILURE
Der zum Abschließen der Funktion erforderliche Arbeitsspeicher kann nicht zugeordnet werden.

Hinweise

Wenn der Zählerpfad ein Wildcardzeichen enthält, werden der Abfrage alle Indikatorennamen hinzugefügt, die dem Wildcardzeichen entsprechen.

Wenn ein Zähler instance angegeben wird, der noch nicht vorhanden ist, meldet PdhAddCounter keine Fehlerbedingung. Stattdessen wird ERROR_SUCCESS zurückgegeben. Der Grund für dieses Verhalten ist, dass nicht bekannt ist, ob ein nicht vorhandener Zähler instance angegeben wurde oder ob ein Vorhandener vorhanden ist, aber noch nicht erstellt wurde.

Verwenden Sie die PdhRemoveCounter-Funktion , um den Zähler aus der Abfrage zu entfernen.

Beispiele

Ein Beispiel finden Sie unter Durchsuchen von Leistungsindikatoren oder Lesen von Leistungsdaten aus einer Protokolldatei.

Hinweis

Der pdh.h-Header definiert PdhAddCounter als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile pdh.h
Bibliothek Pdh.lib
DLL Pdh.dll

Weitere Informationen

PdhAddEnglishCounter

PdhBrowseCounters

PdhMakeCounterPath

PdhOpenQuery

PdhRemoveCounter