PdhGetFormattedCounterValue-Funktion (pdh.h)
Berechnet einen anzeigebaren Wert für den angegebenen Leistungsindikator.
Syntax
PDH_FUNCTION PdhGetFormattedCounterValue(
[in] PDH_HCOUNTER hCounter,
[in] DWORD dwFormat,
[out] LPDWORD lpdwType,
[out] PPDH_FMT_COUNTERVALUE pValue
);
Parameter
[in] hCounter
Handle des Indikators, für den Sie einen anzeigebaren Wert berechnen möchten. Die PdhAddCounter-Funktion gibt dieses Handle zurück.
[in] dwFormat
Bestimmt den Datentyp des formatierten Werts. Geben Sie einen der folgenden Werte an.
Sie können den bitweisen inklusiven OR-Operator (|) verwenden, um den Datentyp mit einem der folgenden Skalierungsfaktoren zu kombinieren.
[out] lpdwType
Empfängt den Zählertyp. Eine Liste der Leistungsindikatorentypen finden Sie im Abschnitt Leistungsindikatorentypen des Windows Server 2003 Deployment Kit. Dieser Parameter ist optional.
[out] pValue
Eine PDH_FMT_COUNTERVALUE-Struktur , die den Zählerwert empfängt.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt sie ERROR_SUCCESS zurück.
Wenn die Funktion fehlschlägt, ist der Rückgabewert ein Systemfehlercode oder ein PDH-Fehlercode. Im Folgenden sind mögliche Werte aufgeführt.
Rückgabecode | Beschreibung |
---|---|
|
Ein Parameter ist ungültig oder falsch formatiert. |
|
Der angegebene Leistungsindikator enthält keine gültigen Daten oder einen erfolgreichen status Code. |
|
Das Zählerhandle ist ungültig. |
Hinweise
Die Daten für den Leistungsindikator sind für die Dauer des Aufrufs von PdhGetFormattedCounterValue gesperrt (geschützt), um Änderungen während der Verarbeitung des Aufrufs zu verhindern. Beim Lesen der Daten (beim erfolgreichen Aufrufen dieser Funktion) wird das Datenänderungsflag für den Zähler gelöscht.
Einige Leistungsindikatoren, z. B. Ratenindikatoren, erfordern zwei Zählerwerte, um einen anzeigebaren Wert zu berechnen. In diesem Fall müssen Sie PdhCollectQueryData zweimal aufrufen, bevor Sie PdhGetFormattedCounterValue aufrufen. Weitere Informationen finden Sie unter Sammeln von Leistungsdaten.
Wenn der angegebene Zähler instance nicht vorhanden ist, gibt die Methode PDH_INVALID_DATA zurück und legt den CStatus-Member der PDH_FMT_COUNTERVALUE-Struktur auf PDH_CSTATUS_NO_INSTANCE fest.
Vor Windows Server 2003: Der Formataufruf schlägt möglicherweise für Leistungsindikatoren fehl, die nur einen einzelnen Wert erfordern, wenn der instance nicht gefunden wird. Versuchen Sie erneut, die Abfrage aufzurufen und Die Aufrufe zu formatieren. Wenn der Formataufruf beim zweiten Mal fehlschlägt, wird die instance nicht gefunden. Alternativ können Sie die PdhEnumObjects-Funktion aufrufen, wobei die Aktualisierungsoption auf TRUE festgelegt ist, um die Zählerinstanzen vor dem Abfragen und Formatieren der Zählerdaten zu aktualisieren.
Beispiele
Ein Beispiel finden Sie unter Durchsuchen von Leistungsindikatoren oder Lesen von Leistungsdaten aus einer Protokolldatei.
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 |