Bagikan melalui


Fungsi StopTraceA (evntrace.h)

Fungsi StopTrace menghentikan sesi pelacakan peristiwa yang ditentukan.

Fungsi ini sudah usang. Fungsi ControlTrace menggantikan fungsi ini.

Sintaks

ULONG WMIAPI StopTraceA(
  CONTROLTRACE_ID         TraceId,
  LPCSTR                  InstanceName,
  PEVENT_TRACE_PROPERTIES Properties
);

Parameter

TraceId

InstanceName

Nama sesi pelacakan peristiwa yang akan dihentikan, atau NULL. Anda harus menentukan InstanceName jika TraceHandle adalah 0.

Untuk menentukan sesi NT Kernel Logger, atur InstanceName ke KERNEL_LOGGER_NAME.

Properties

Arahkan ke struktur EVENT_TRACE_PROPERTIES yang menerima properti dan statistik akhir untuk sesi tersebut.

Jika Anda menggunakan struktur yang baru diinisialisasi, Anda hanya perlu mengatur anggota Wnode.BufferSize, Wnode.Guid, LoggerNameOffset, dan LogFileNameOffset dari struktur. Anda dapat menggunakan nama sesi maksimum (1024 karakter) dan panjang nama file log maksimum (1024 karakter) untuk menghitung ukuran buffer dan offset jika tidak diketahui.

Dimulai dengan Windows 10, versi 1703: Untuk performa yang lebih baik dalam skenario lintas proses, Anda sekarang dapat meneruskan pemfilteran ke StopTrace untuk pencatat privat luas sistem. Anda harus meneruskan struktur EVENT_TRACE_PROPERTIES_V2 baru untuk menyertakan informasi pemfilteran. Lihat Mengonfigurasi dan Memulai Sesi Pencatat Privat untuk detail selengkapnya.

Menampilkan nilai

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_BAD_LENGTH

    Salah satu hal berikut ini benar:

    • Anggota Properti Wnode.BufferSize menentukan ukuran yang salah.
    • Properti tidak memiliki cukup ruang yang dialokasikan untuk menyimpan salinan nama sesi dan nama file log (jika digunakan).
  • ERROR_INVALID_PARAMETER

    Salah satu hal berikut ini benar:

    • Properti adalah NULL.
    • InstanceName dan TraceHandle keduanya ADALAH NULL.
    • InstanceName adalah NULL dan TraceHandle bukan handel yang valid.
  • ERROR_ACCESS_DENIED Hanya pengguna dengan hak administratif, pengguna di grup Pengguna Log Performa, dan layanan yang berjalan sebagai LocalSystem, LocalService, NetworkService yang dapat mengontrol sesi pelacakan peristiwa. Untuk memberi pengguna terbatas kemampuan untuk mengontrol sesi pelacakan, tambahkan ke grup Pengguna Log Performa.

    Windows XP dan Windows 2000: Siapa pun dapat mengontrol sesi pelacakan.

Keterangan

Pengontrol pelacakan peristiwa memanggil fungsi ini.

Fungsi ini sudah usang. Sebagai gantinya, gunakan ControlTrace dengan ControlCode yang diatur ke EVENT_TRACE_CONTROL_STOP.

Jika LogFileMode berisi EVENT_TRACE_FILE_MODE_PREALLOCATE, StartTrace memperluas file log ke Byte MaximumFileSize . File menempati seluruh ruang selama pengelogan, untuk log melingkar dan berurutan. Ketika Anda menghentikan pencatat, file log dikurangi ke ukuran yang diperlukan.

Jangan panggil StopTrace dari DllMain (dapat menyebabkan kebuntuan).

Catatan

Header evntrace.h mendefinisikan StopTrace sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows 2000 Server [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header evntrace.h
Pustaka Sechost.lib pada Windows 8.1 dan Windows Server 2012 R2; Advapi32.lib di Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, dan Windows XP
DLL Sechost.dll pada Windows 8.1 dan Windows Server 2012 R2; Advapi32.dll pada Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, dan Windows XP

Lihat juga

ControlTrace

StartTrace