Freigeben über


EvtRender-Funktion (winevt.h)

Rendert ein XML-Fragment basierend auf dem von Ihnen angegebenen Renderingkontext.

Syntax

BOOL EvtRender(
  [in]  EVT_HANDLE Context,
  [in]  EVT_HANDLE Fragment,
  [in]  DWORD      Flags,
  [in]  DWORD      BufferSize,
  [in]  PVOID      Buffer,
  [out] PDWORD     BufferUsed,
  [out] PDWORD     PropertyCount
);

Parameter

[in] Context

Ein Handle für den Renderingkontext, den die EvtCreateRenderContext-Funktion zurückgibt. Dieser Parameter muss auf NULL festgelegt werden, wenn der Flags-Parameter auf EvtRenderEventXml oder EvtRenderBookmark festgelegt ist.

[in] Fragment

Ein Handle für ein Ereignis oder ein Lesezeichen. Legen Sie diesen Parameter auf ein Lesezeichenhandle fest, wenn der Flags-Parameter auf EvtRenderBookmark festgelegt ist. andernfalls auf ein Ereignishandle festgelegt.

[in] Flags

Ein Flag, das angibt, was gerendert werden soll. Beispielsweise das gesamte Ereignis oder bestimmte Eigenschaften des Ereignisses. Mögliche Werte finden Sie in der EVT_RENDER_FLAGS-Enumeration .

[in] BufferSize

Die Größe des Pufferpuffers in Bytes.

[in] Buffer

Ein vom Aufrufer zugewiesener Puffer, der die gerenderte Ausgabe empfängt. Der Inhalt ist eine mit NULL endende Unicode-Zeichenfolge, wenn der Flags-Parameter auf EvtRenderEventXml oder EvtRenderBookmark festgelegt ist. Andernfalls enthält der Puffer, wenn Flags auf EvtRenderEventValues festgelegt ist, ein Array von EVT_VARIANT Strukturen. eine für jede Eigenschaft, die vom Renderingkontext angegeben wird. Der PropertyCount-Parameter enthält die Anzahl der Elemente im Array.

Sie können diesen Parameter auf NULL festlegen, um die erforderliche Puffergröße zu bestimmen.

[out] BufferUsed

Die Größe des vom Aufrufer zugewiesenen Puffers in Bytes, den die Funktion verwendet hat, oder die erforderliche Puffergröße, wenn die Funktion mit ERROR_INSUFFICIENT_BUFFER fehlschlägt.

[out] PropertyCount

Die Anzahl der Eigenschaften im Buffer-Parameter , wenn der Flags-Parameter auf EvtRenderEventValues festgelegt ist; andernfalls 0.

Rückgabewert

Rückgabecode/-wert BESCHREIBUNG
TRUE
Die Funktion wurde erfolgreich ausgeführt.
FALSE
Fehler bei der Funktion. Rufen Sie die GetLastError-Funktion auf, um den Fehlercode abzurufen.

Hinweise

Es besteht eine 1:1-Beziehung zwischen dem Array von XPath-Ausdrücken, das Sie beim Aufrufen der EvtCreateRenderContext-Funktion angegeben haben, und dem Array, das die Werte im Puffer zurückgegeben haben.

Wenn ein EVT_HANDLE aus dieser Funktion in der EvtRender-Funktion verwendet wird, besteht die Von dieser Funktion zurückgegebene Liste der Werte aus einem Array von EVT_VARIANT Strukturen, die jeweils genau einem der XPATH-Ausdrücke im ursprünglichen ValuePaths-Parameterarray in der Reihenfolge ihrer Darstellung entsprechen. Jede dieser EVT_VARIANT-Struktur enthält den Wert, der durch den entsprechenden XPATH-Ausdruck für das gerenderte Ereignis identifiziert wird. Wenn kein Wert gefunden wird, enthält die EVT_VARIANT-StrukturNULL. Wenn mehrere Werte vorhanden sind, enthält die EVT_VARIANT-Struktur den ersten gefundenen Wert.

Seien Sie vorsichtig, wenn Sie Gleitkommazahlen in XPath-Abfragen vergleichen. Jede Zeichenfolgendarstellung einer Gleitkommazahl wird angenähert, sodass der in XML angezeigte Wert möglicherweise nicht mit der im Ereignis gespeicherten Zahl übereinstimmt. Gleitkommazahlen sollten als kleiner oder größer als eine Konstante verglichen werden.

Beispiele

Ein Beispiel für die Verwendung dieser Funktion finden Sie unter Rendern von Ereignissen und Lesezeichenereignissen.

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 winevt.h
Bibliothek Wevtapi.lib
DLL Wevtapi.dll

Weitere Informationen

EvtCreateRenderContext