Bagikan melalui


Fungsi PerfEnumerateCounterSetInstances (perflib.h)

Mendapatkan nama dan pengidentifikasi instans aktif dari penghitung yang ditetapkan pada

sistem yang ditentukan.

Sintaks

ULONG PerfEnumerateCounterSetInstances(
  [in, optional]  LPCWSTR               szMachine,
  [in]            LPCGUID               pCounterSetId,
  [out, optional] PPERF_INSTANCE_HEADER pInstances,
                  DWORD                 cbInstances,
  [out]           LPDWORD               pcbInstancesActual
);

Parameter

[in, optional] szMachine

Nama komputer untuk mendapatkan informasi tentang instans aktif dari set penghitung yang ditentukan parameter pCounterSet . Jika NULL, fungsi mengambil informasi tentang instans aktif dari penghitung yang ditentukan yang ditetapkan untuk komputer lokal.

[in] pCounterSetId

Pengidentifikasi set penghitung dari set penghitung yang ingin Anda dapatkan informasi tentang instans aktif.

[out, optional] pInstances

Penunjuk ke buffer yang cukup besar untuk menerima jumlah data yang ditentukan parameter cbInstances . Mungkin

NULL jika cbInstances adalah 0.

cbInstances

Ukuran buffer yang ditentukan parameter pInstances , dalam byte.

[out] pcbInstancesActual

Ukuran buffer sebenarnya diperlukan untuk mendapatkan informasi tentang instans aktif. Arti tergantung pada nilai fungsi

Kembali.

Nilai Pengembalian Fungsi Arti dari pcbInstancesActual
ERROR_SUCCESS Jumlah

byte informasi tentang instans aktif dari kumpulan penghitung yang ditentukan yang disimpan fungsi dalam buffer yang ditentukan pInstances .

ERROR_NOT_ENOUGH_MEMORY The

ukuran buffer yang diperlukan untuk menyimpan informasi tentang instans aktif penghitung yang ditetapkan pada komputer yang ditentukan, dalam byte. Memperbesar buffer ke yang diperlukan

ukuran dan panggil fungsi lagi.

Lainnya Nilai tidak ditentukan dan tidak boleh digunakan.

Mengembalikan nilai

Menampilkan kode Deskripsi
ERROR_SUCCESS
Fungsi berhasil menyimpan semua informasi tentang instans aktif penghitung yang diatur dalam buffer yang ditentukan pInstances . Nilai yang ditunjukkan pcbInstancesActual menunjukkan jumlah informasi yang benar-benar disimpan dalam buffer, dalam byte.
ERROR_NOT_ENOUGH_MEMORY
Buffer yang ditentukan pInstance tidak cukup besar untuk menyimpan semua informasi tentang instans aktif dari set penghitung. Nilai yang ditunjukkan pcbInstancesActual menunjukkan ukuran buffer yang diperlukan untuk menyimpan semua informasi. Memperbesar buffer ke yang diperlukan

ukuran dan panggil fungsi lagi.

 

Untuk jenis kegagalan lainnya, nilai yang dikembalikan adalah kode kesalahan sistem.

Keterangan

Informasi tentang instans aktif dari set penghitung yang ditentukan ditulis ke buffer yang ditentukan pInstances sebagai urutan blok PERF_INSTANCE_HEADER . Ukuran dalam byte dari

urutan blok ditulis ke pcbInstancesActual. Setiap blok PERF_INSTANCE_HEADER terdiri dari

dari struktur PERF_INSTANCE_HEADER , segera diikuti oleh UTF-16LE yang dihentikan null

nama instans, diikuti dengan padding sehingga ukuran

PERF_INSTANCE_HEADER blok adalah kelipatan 8 byte.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 10, versi 1607 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2016 [hanya aplikasi desktop]
Target Platform Windows
Header perflib.h
Pustaka AdvAPI32.lib
DLL AdvAPI32.dll

Lihat juga

PERF_INSTANCE_HEADER

PerfEnumerateCounterSet