Bagikan melalui


Fungsi PdhMakeCounterPathA (pdh.h)

Membuat jalur penghitung penuh menggunakan anggota yang ditentukan dalam struktur PDH_COUNTER_PATH_ELEMENTS.

Sintaksis

PDH_FUNCTION PdhMakeCounterPathA(
  [in]      PPDH_COUNTER_PATH_ELEMENTS_A pCounterPathElements,
  [out]     LPSTR                        szFullPathBuffer,
  [in, out] LPDWORD                      pcchBufferSize,
  [in]      DWORD                        dwFlags
);

Parameter

[in] pCounterPathElements

Struktur PDH_COUNTER_PATH_ELEMENTS yang berisi anggota yang digunakan untuk membuat jalur. Hanya szObjectName dan szCounterName anggota yang diperlukan, yang lain bersifat opsional.

Jika anggota nama instans null, jalur tidak akan berisi referensi instans dan szParentInstance dan dwInstanceIndex anggota akan diabaikan.

[out] szFullPathBuffer

Buffer yang dialokasikan pemanggil yang menerima jalur penghitung nulldihentikan. Panjang maksimum jalur penghitung adalah PDH_MAX_COUNTER_PATH. Atur ke NULL jika pcchBufferSize adalah nol.

[in, out] pcchBufferSize

Ukuran buffer szFullPathBuffer , 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 merealokasi buffer.

[in] dwFlags

Format nilai penghitung input dan output. Anda dapat menentukan salah satu nilai berikut.

Nilai Arti
PDH_PATH_WBEM_RESULT
Mengonversi jalur PDH ke kelas WMI dan format nama properti.
PDH_PATH_WBEM_INPUT
Mengonversi kelas WMI dan nama properti menjadi jalur PDH.
0
Mengembalikan jalur dalam format PDH, misalnya, \\computer\object(parent/instance#index)\counter.

Mengembalikan nilai

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.

Mengembalikan kode Deskripsi
PDH_MORE_DATA
Buffer szFullPathBuffer terlalu kecil untuk berisi nama penghitung. Nilai pengembalian ini diharapkan jika pcchBufferSize 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 merealokasi buffer.
PDH_INVALID_ARGUMENT
Parameter tidak valid atau salah diformat. 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.

Komentar

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

Nota

Header pdh.h mendefinisikan PdhMakeCounterPath sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosektor 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

Syarat Nilai
klien minimum yang didukung Windows XP [hanya aplikasi desktop]
server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Platform Target Windows
Header pdh.h
Pustaka Pdh.lib
DLL Pdh.dll

Lihat juga

PDH_COUNTER_PATH_ELEMENTS

PdhParseCounterPath