Bagikan melalui


Fungsi EvtRender (winevt.h)

Merender fragmen XML berdasarkan konteks penyajian yang Anda tentukan.

Sintaks

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

Handel ke konteks penyajian yang dikembalikan fungsi EvtCreateRenderContext . Parameter ini harus diatur ke NULL jika parameter Flags diatur ke EvtRenderEventXml atau EvtRenderBookmark.

[in] Fragment

Handel ke peristiwa atau ke bookmark. Atur parameter ini ke handel bookmark jika parameter Flags diatur ke EvtRenderBookmark; jika tidak, atur ke handel peristiwa.

[in] Flags

Bendera yang mengidentifikasi apa yang harus dirender. Misalnya, seluruh peristiwa atau properti tertentu dari peristiwa tersebut. Untuk nilai yang mungkin, lihat enumerasi EVT_RENDER_FLAGS .

[in] BufferSize

Ukuran buffer Buffer , dalam byte.

[in] Buffer

Buffer yang dialokasikan penelepon yang akan menerima output yang dirender. Kontennya adalah string Unicode yang dihentikan null jika parameter Flags diatur ke EvtRenderEventXml atau EvtRenderBookmark. Jika tidak, jika Bendera diatur ke EvtRenderEventValues, buffer berisi array struktur EVT_VARIANT ; satu untuk setiap properti yang ditentukan oleh konteks penyajian. Parameter PropertyCount berisi jumlah elemen dalam array.

Anda dapat mengatur parameter ini ke NULL untuk menentukan ukuran buffer yang diperlukan.

[out] BufferUsed

Ukuran, dalam byte, dari buffer yang dialokasikan pemanggil yang digunakan fungsi atau ukuran buffer yang diperlukan jika fungsi gagal dengan ERROR_INSUFFICIENT_BUFFER.

[out] PropertyCount

Jumlah properti dalam parameter Buffer jika parameter Bendera diatur ke EvtRenderEventValues; jika tidak, nol.

Mengembalikan nilai

Mengembalikan kode/nilai Deskripsi
TRUE
Fungsi berhasil.
FALSE
Fungsi gagal. Panggil fungsi GetLastError untuk mendapatkan kode kesalahan.

Keterangan

Ada hubungan satu-ke-satu antara array ekspresi JalurX yang Anda tentukan saat Anda memanggil fungsi EvtCreateRenderContext dan array nilai yang dikembalikan dalam buffer.

Ketika EVT_HANDLE dari fungsi ini digunakan dalam fungsi EvtRender , daftar nilai yang dikembalikan oleh fungsi tersebut terdiri dari array struktur EVT_VARIANT , masing-masing sesuai dengan salah satu ekspresi XPATH dalam array parameter ValuePaths asli dalam urutan penampilan. Setiap struktur EVT_VARIANT tersebut berisi nilai yang diidentifikasi oleh ekspresi XPATH yang sesuai untuk peristiwa yang sedang dirender. Jika tidak ada nilai yang ditemukan, struktur EVT_VARIANT berisi NULL. Jika ada beberapa nilai, struktur EVT_VARIANT akan berisi nilai pertama yang ditemui.

Berhati-hatilah saat membandingkan angka floating-point dalam kueri JalurX. Setiap representasi string dari angka floating-point diperkirakan, sehingga nilai yang ditampilkan di XML mungkin tidak cocok dengan angka yang disimpan dengan peristiwa. Angka floating-point harus dibandingkan sebagai kurang dari atau lebih besar dari konstanta.

Contoh

Untuk contoh yang memperlihatkan cara menggunakan fungsi ini, lihat Merender Peristiwa dan Menandai Peristiwa.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header winevt.h
Pustaka Wevtapi.lib
DLL Wevtapi.dll

Lihat juga

EvtCreateRenderContext