Fungsi PdhEnumObjectsHA (pdh.h)

Mengembalikan daftar objek yang tersedia di komputer yang ditentukan atau dalam file log yang ditentukan.

Fungsi ini identik dengan PdhEnumObjects, kecuali mendukung penggunaan handel ke sumber data.

Sintaks

PDH_FUNCTION PdhEnumObjectsHA(
  [in]      PDH_HLOG hDataSource,
  [in]      LPCSTR   szMachineName,
  [out]     PZZSTR   mszObjectList,
  [in, out] LPDWORD  pcchBufferSize,
  [in]      DWORD    dwDetailLevel,
  [in]      BOOL     bRefresh
);

Parameter

[in] hDataSource

Tangani ke sumber data yang dikembalikan oleh fungsi PdhBindInputDataSource .

[in] szMachineName

String yang dihentikan null yang menentukan nama komputer yang digunakan untuk menghitung objek performa.

Sertakan garis miring terkemuka dalam nama komputer, misalnya, \computername.

Jika szDataSource adalah NULL, Anda dapat mengatur szMachineName ke NULL untuk menentukan komputer lokal.

[out] mszObjectList

Buffer yang dialokasikan penelepon yang menerima daftar nama objek. Setiap nama objek dalam daftar ini dihentikan oleh karakter null . Daftar dihentikan dengan dua karakter null-terminator. Atur ke NULL jika pcchBufferLength adalah nol.

[in, out] pcchBufferSize

Ukuran buffer mszObjectList , dalam TCHAR. Jika nol pada input, fungsi mengembalikan PDH_MORE_DATA dan mengatur parameter ini ke ukuran buffer yang diperlukan. Jika buffer lebih besar dari ukuran yang diperlukan, fungsi mengatur parameter ini ke ukuran buffer aktual yang digunakan. Jika ukuran yang ditentukan pada input lebih besar dari nol tetapi kurang dari ukuran yang diperlukan, Anda tidak boleh mengandalkan ukuran yang dikembalikan untuk mengalokasikan kembali buffer.

Windows XP: Tambahkan satu ke ukuran buffer yang diperlukan.

[in] dwDetailLevel

Tingkat detail item performa yang akan dikembalikan. Semua item yang berada di tingkat detail yang ditentukan atau kurang akan dikembalikan (tingkat dicantumkan dalam urutan yang meningkat). Parameter ini bisa menjadi salah satu nilai berikut.

Nilai Makna
PERF_DETAIL_NOVICE
Tingkat detail pengguna pemula.
PERF_DETAIL_ADVANCED
Tingkat detail pengguna tingkat lanjut.
PERF_DETAIL_EXPERT
Tingkat detail pengguna ahli.
PERF_DETAIL_WIZARD
Tingkat detail perancang sistem.

[in] bRefresh

Menunjukkan apakah daftar objek yang di-cache harus disegarkan secara otomatis. Tentukan salah satu nilai berikut ini.

Jika Anda memanggil fungsi ini dua kali, sekali untuk mendapatkan ukuran daftar dan kedua kalinya untuk mendapatkan daftar aktual, atur parameter ini ke TRUE pada panggilan pertama dan FALSE pada panggilan kedua. Jika kedua panggilan TRUE, panggilan kedua juga dapat mengembalikan PDH_MORE_DATA karena data objek mungkin telah berubah di antara panggilan.

Nilai Makna
TRUE
Cache objek disegarkan secara otomatis sebelum objek dikembalikan.
FALSE
Jangan menyegarkan cache secara otomatis.

Nilai kembali

Jika fungsi berhasil, fungsi akan mengembalikan ERROR_SUCCESS.

Jika fungsi gagal, nilai yang dikembalikan adalah kode kesalahan sistem atau kode kesalahan PDH. Berikut ini adalah nilai yang mungkin.

Menampilkan kode Deskripsi
PDH_MORE_DATA
Buffer mszObjectList terlalu kecil untuk menyimpan daftar objek. Nilai pengembalian ini diharapkan jika pcchBufferLength adalah nol pada input. Jika ukuran yang ditentukan pada input lebih besar dari nol tetapi kurang dari ukuran yang diperlukan, Anda tidak boleh mengandalkan ukuran yang dikembalikan untuk mengalokasikan kembali buffer.
PDH_CSTATUS_NO_MACHINE
Komputer yang ditentukan luring atau tidak tersedia.
PDH_CSTATUS_NO_OBJECT
Objek yang ditentukan tidak dapat ditemukan.
PDH_INVALID_ARGUMENT
Parameter tidak valid. Misalnya, pada beberapa rilis, Anda dapat menerima kesalahan ini jika ukuran yang ditentukan pada input lebih besar dari nol tetapi kurang dari ukuran yang diperlukan.

Keterangan

Anda harus memanggil fungsi ini dua kali, pertama kali untuk mendapatkan ukuran buffer yang diperlukan (atur mszObjectList ke NULL dan pcchBufferLength ke 0), dan kedua kalinya untuk mendapatkan data.

Catatan

Header pdh.h mendefinisikan PdhEnumObjectsH 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 XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header pdh.h
Pustaka Pdh.lib
DLL Pdh.dll

Lihat juga

PdhBindInputDataSource

PdhEnumObjectItemsH