Fungsi CreateTraceInstanceId (evntrace.h)
Penyedia peristiwa berbasis RegisterTraceGuids ("Klasik") dapat menggunakan fungsi CreateTraceInstanceId untuk membuat pengidentifikasi transaksi unik dan memetakannya ke handel pendaftaran. Penyedia kemudian menggunakan pengidentifikasi transaksi saat memanggil fungsi TraceEventInstance untuk menandai peristiwa sebagai milik transaksi yang ditentukan. Pengidentifikasi transaksi dapat digunakan oleh alat analisis pelacakan untuk mengelompokkan peristiwa.
Sintaks
ULONG WMIAPI CreateTraceInstanceId(
[in] HANDLE RegHandle,
[out] PEVENT_INSTANCE_INFO InstInfo
);
Parameter
[in] RegHandle
Menangani ke kelas pelacakan peristiwa terdaftar. Fungsi RegisterTraceGuids mengembalikan handel ini di anggota RegHandle dari struktur TRACE_GUID_REGISTRATION .
[out] InstInfo
Penunjuk ke struktur EVENT_INSTANCE_INFO . Anggota InstanceId dari struktur ini berisi pengidentifikasi transaksi.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan adalah ERROR_SUCCESS.
Jika fungsi gagal, nilai yang dikembalikan adalah salah satu kode kesalahan sistem. Berikut ini adalah beberapa kesalahan umum dan penyebabnya.
ERROR_INVALID_PARAMETER
Salah satu hal berikut ini benar:
- RegHandleadalah NULL.
- pInstInfo adalah NULL.
Keterangan
Penyedia berbasis RegisterTraceGuids ("Klasik") memanggil fungsi ini. Gunakan EventActivityIdControl untuk fungsionalitas serupa dengan penyedia berbasis EventRegister ("Crimson").
ETW membuat pengidentifikasi dalam proses mode pengguna, sehingga mungkin mengembalikan angka yang sama untuk instans yang berbeda dalam proses yang berbeda. Nilai dimulai kembali pada 1
saat InstanceId mencapai nilai maksimum untuk ULONG. Hanya penyedia mode pengguna yang dapat memanggil fungsi CreateTraceInstanceId (driver tidak dapat memanggil fungsi ini).
Contoh
Untuk contoh yang menggunakan CreateTraceInstanceId, lihat Melacak Instans Peristiwa.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | evntrace.h |
Pustaka | Advapi32.lib |
DLL | Advapi32.dll |