Fungsi PdhAddEnglishCounterA (pdh.h)

Menambahkan penghitung netral bahasa yang ditentukan ke kueri.

Sintaks

PDH_FUNCTION PdhAddEnglishCounterA(
  [in]  PDH_HQUERY   hQuery,
  [in]  LPCSTR       szFullCounterPath,
  [in]  DWORD_PTR    dwUserData,
  [out] PDH_HCOUNTER *phCounter
);

Parameter

[in] hQuery

Tangani ke kueri yang ingin Anda tambahkan penghitungnya. Handel ini dikembalikan oleh fungsi PdhOpenQuery .

[in] szFullCounterPath

String yang dihentikan null yang berisi jalur penghitung. Untuk detail tentang format jalur penghitung, lihat Menentukan Jalur Penghitung. Panjang maksimum jalur penghitung adalah PDH_MAX_COUNTER_PATH.

[in] dwUserData

Nilai yang ditentukan pengguna. Nilai ini menjadi bagian dari informasi penghitung. Untuk mengambil nilai ini nanti, panggil fungsi PdhGetCounterInfo dan akses anggota dwQueryUserData dari struktur PDH_COUNTER_INFO .

[out] phCounter

Tangani ke penghitung yang ditambahkan ke kueri. Anda mungkin perlu mereferensikan handel ini dalam panggilan berikutnya.

Nilai kembali

Mengembalikan ERROR_SUCCESS jika fungsi berhasil.

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

Menampilkan kode Deskripsi
PDH_CSTATUS_BAD_COUNTERNAME
Jalur penghitung tidak dapat diurai atau ditafsirkan.
PDH_CSTATUS_NO_COUNTER
Tidak dapat menemukan penghitung yang ditentukan pada komputer atau dalam file log.
PDH_CSTATUS_NO_COUNTERNAME
Jalur penghitung kosong.
PDH_CSTATUS_NO_MACHINE
Jalur tidak memuat nama komputer dan fungsi tidak dapat mengambil nama komputer lokal.
PDH_CSTATUS_NO_OBJECT
Tidak dapat menemukan objek yang ditentukan pada komputer atau dalam file log.
PDH_FUNCTION_NOT_FOUND
Tidak dapat menentukan fungsi perhitungan yang akan digunakan untuk penghitung ini.
PDH_INVALID_ARGUMENT
Satu atau beberapa argumen tidak valid.
PDH_INVALID_HANDLE
Handel kueri tidak valid.
PDH_MEMORY_ALLOCATION_FAILURE
Tidak dapat mengalokasikan memori yang diperlukan untuk menyelesaikan fungsi.

Keterangan

Fungsi ini menyediakan cara netral bahasa untuk menambahkan penghitung kinerja ke kueri. Sebaliknya, jalur penghitung yang Anda tentukan dalam fungsi PdhAddCounter harus dilokalkan.

Jika instans penghitung ditentukan yang belum ada, PdhAddEnglishCounter tidak melaporkan kondisi kesalahan. Sebaliknya, ia mengembalikan ERROR_SUCCESS. Alasan untuk perilaku ini adalah bahwa tidak diketahui apakah instans penghitung yang tidak ada telah ditentukan atau apakah satu akan ada tetapi belum dibuat.

Untuk menghapus penghitung dari kueri, gunakan fungsi PdhRemoveCounter .

Catatan Jika jalur penghitung berisi karakter kartubebas, bagian non-kartubebas jalur akan dilokalkan, tetapi kartubebas tidak akan diperluas sebelum menambahkan jalur penghitung yang dilokalkan ke kueri. Dalam hal ini, Anda harus menggunakan prosedur berikut untuk menambahkan semua nama penghitung yang cocok ke kueri.
  1. Membuat kueri
  2. Gunakan PdhAddEnglishCounter dengan string yang berisi kartubebas
  3. Gunakan PdhGetCounterInfo pada handel penghitung yang dikembalikan oleh PdhAddEnglishCounter untuk mendapatkan jalur lengkap yang dilokalkan (szFullPath.) String ini masih berisi kartubebas, tetapi bagian non-kartubebas sekarang dilokalkan.
  4. Gunakan PdhExpandWildCardPath untuk memperluas wildcard.
  5. Gunakan PdhAddCounter pada setiap jalur yang dihasilkan
 

Catatan

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

Lihat juga

PdhAddCounter

PdhBrowseCounters

PdhMakeCounterPath

PdhOpenQuery

PdhRemoveCounter