Bagikan melalui


Fungsi PdhParseCounterPathA (pdh.h)

Mengurai elemen jalur penghitung dan menyimpan hasilnya dalam struktur PDH_COUNTER_PATH_ELEMENTS.

Sintaksis

PDH_FUNCTION PdhParseCounterPathA(
  [in]      LPCSTR                       szFullPathBuffer,
  [out]     PPDH_COUNTER_PATH_ELEMENTS_A pCounterPathElements,
  [in, out] LPDWORD                      pdwBufferSize,
            DWORD                        dwFlags
);

Parameter

[in] szFullPathBuffer

String nulldihentikan yang berisi jalur penghitung untuk diurai. Panjang maksimum jalur penghitung adalah PDH_MAX_COUNTER_PATH.

[out] pCounterPathElements

Buffer yang dialokasikan pemanggil yang menerima struktur PDH_COUNTER_PATH_ELEMENTS. Struktur berisi penunjuk ke elemen string individual dari jalur yang dirujuk oleh parameter szFullPathBuffer. Fungsi menambahkan string ke akhir struktur PDH_COUNTER_PATH_ELEMENTS. Buffer yang dialokasikan harus cukup besar untuk struktur dan string. Atur ke NULL jika pdwBufferSize adalah nol.

[in, out] pdwBufferSize

Ukuran pCounterPathElements buffer, dalam byte. 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.

dwFlags

Dipesan. Harus nol.

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_INVALID_ARGUMENT
Parameter tidak valid.
PDH_MORE_DATA
Buffer pCounterPathElements terlalu kecil untuk berisi elemen jalur. Nilai pengembalian ini diharapkan jika pdwBufferSize 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_PATH
Jalur tidak diformat dengan benar dan tidak dapat diurai. 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.
PDH_MEMORY_ALLOCATION_FAILURE
Tidak dapat mengalokasikan memori untuk menyelesaikan fungsi.

Komentar

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

Nota

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

PdhMakeCounterPath