TdhGetProperty-Funktion (tdh.h)
Ruft einen Eigenschaftswert aus den Ereignisdaten ab.
Syntax
TDHSTATUS TdhGetProperty(
[in] PEVENT_RECORD pEvent,
[in] ULONG TdhContextCount,
[in] PTDH_CONTEXT pTdhContext,
[in] ULONG PropertyDataCount,
[in] PPROPERTY_DATA_DESCRIPTOR pPropertyData,
[in] ULONG BufferSize,
[out] PBYTE pBuffer
);
Parameter
[in] pEvent
Der An Ihren EventRecordCallback-Rückruf übergebene Ereignisdatensatz. Ausführliche Informationen finden Sie in der EVENT_RECORD-Struktur .
[in] TdhContextCount
Anzahl der Elemente in pTdhContext.
[in] pTdhContext
Array von Kontextwerten nur für WPP- oder klassische ETW-Ereignisse; andernfalls NULL. Ausführliche Informationen finden Sie in der TDH_CONTEXT-Struktur . Das Array darf keine doppelten Kontexttypen enthalten.
[in] PropertyDataCount
Anzahl der Datendeskriptorstrukturen in pPropertyData.
[in] pPropertyData
Array von PROPERTY_DATA_DESCRIPTOR Strukturen, die die abzurufende Eigenschaft definieren.
Wenn Sie die TdhGetPropertySize-Funktion aufgerufen haben, um die erforderliche Puffergröße für die Eigenschaft abzurufen, können Sie dieselben Datendeskriptoren verwenden.
Wenn Sie eine Eigenschaft abrufen, die kein Element einer Struktur ist, können Sie einen einzelnen Datendeskriptor angeben. Wenn Sie eine Eigenschaft abrufen, die ein Element einer Struktur ist, geben Sie ein Array aus zwei Datendeskriptoren an (Strukturen können keine anderen Strukturen enthalten oder darauf verweisen).
[in] BufferSize
Größe des pBuffer-Puffers in Bytes. Sie können diesen Wert aus dem pPropertySize-Parameter abrufen, wenn Sie die TdhGetPropertySize-Funktion aufrufen.
[out] pBuffer
Vom Benutzer zugewiesener Puffer, der die Eigenschaftendaten empfängt.
Rückgabewert
Gibt bei erfolgreicher Ausführung ERROR_SUCCESS zurück. Andernfalls gibt diese Funktion zusätzlich zu anderen einen der folgenden Rückgabecodes zurück.
Rückgabecode | Beschreibung |
---|---|
|
Das Schema für das Ereignis wurde nicht gefunden, oder die angegebene Eigenschaft wurde nicht gefunden. |
|
Der pBuffer-Puffer ist zu klein. Um die erforderliche Puffergröße abzurufen, rufen Sie TdhGetPropertySize auf. |
|
Mindestens ein Parameter ist ungültig. |
|
Das resourceFileName-Attribut im Manifest enthält den Speicherort der Anbieterbinärdatei. Wenn Sie das Manifest registrieren, wird der Speicherort in die Registrierung geschrieben. TDH konnte die Binärdatei nicht basierend auf dem registrierten Speicherort finden. |
|
Der WMI-Dienst ist nicht verfügbar. |
Hinweise
Wenn es sich bei dem Ereignis um ein WPP- oder klassisches ETW-Ereignis handelt, können Sie Kontextinformationen angeben, die zur Analyse der Ereignisinformationen verwendet werden. Das Ereignis ist ein WPP-Ereignis, wenn das EVENT_HEADER_FLAG_TRACE_MESSAGE-Flag im Flags-Element von EVENT_HEADER festgelegt ist (siehe EventHeader-Member von EVENT_RECORD). Das Ereignis ist ein ÄLTERES ETW-Ereignis, wenn das flag EVENT_HEADER_FLAG_CLASSIC_HEADER festgelegt ist.
Eine Liste der Eigenschaften für WPP-Ereignisse und deren Datentypen finden Sie unter PROPERTY_DATA_DESCRIPTOR.
Beispiele
Ein Beispiel, das zeigt, wie Sie diese Funktion aufrufen, um den Wert einer Eigenschaft der obersten Ebene oder des Members einer Struktur abzurufen, finden Sie unter Using TdhGetProperty to Consume Event Data.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | tdh.h |
Bibliothek | Tdh.lib |
DLL | Tdh.dll |