Metode ICorProfilerInfo2::GetClassIDInfo2
Mendapatkan modul induk dan token metadata untuk definisi umum terbuka dari kelas yang ditentukan, ClassID
dari kelas induknya dan ClassID
untuk setiap jenis argumen, jika ada, dari kelas tersebut.
Sintaks
HRESULT GetClassIDInfo2(
[in] ClassID classId,
[out] ModuleID *pModuleId,
[out] mdTypeDef *pTypeDefToken,
[out] ClassID *pParentClassId,
[in] ULONG32 cNumTypeArgs,
[out] ULONG32 *pcNumTypeArgs,
[out] ClassID typeArgs[]);
Parameter
classId
[in] ID kelas yang informasinya akan diambil.
pModuleId
[out] Penunjuk ke ID modul induk untuk definisi umum terbuka dari kelas yang ditentukan.
pTypeDefToken
[out] Penunjuk ke token metadata untuk definisi umum terbuka dari kelas yang ditentukan.
pParentClassId
[out] Penunjuk ke ID kelas induk.
cNumTypeArgs
[in] Ukuran array typeArgs
.
pcNumTypeArgs
[out] Penunjuk ke jumlah total elemen yang tersedia.
typeArgs
[out] Array nilai ClassID
, yang masing-masing mewakili ID argumen jenis kelas. Saat metode kembali, typeArgs
akan berisi beberapa atau semua nilai ClassID
yang tersedia.
Keterangan
Metode GetClassIDInfo2
ini mirip dengan metode ICorProfilerInfo::GetClassIDInfo, tetapi GetClassIDInfo2
mendapatkan informasi tambahan tentang jenis generik.
Kode profiler dapat memanggil ICorProfilerInfo::GetModuleMetaData untuk mendapatkan antarmuka metadata untuk modul tertentu. Token metadata yang ditampilkan pada lokasi yang direferensikan oleh pTypeDefToken
kemudian dapat digunakan untuk mengakses metadata kelas.
Setelah GetClassIDInfo2
ditampilkan, Anda harus memverifikasi bahwa buffer typeArgs
cukup besar untuk menampung semua nilai ClassID
. Untuk melakukannya, bandingkan nilai yang ditunjuk pcNumTypeArgs
dengan nilai parameter cNumTypeArgs
. Jika pcNumTypeArgs
menunjuk ke nilai yang lebih besar dari cNumTypeArgs
, alokasikan buffer typeArgs
yang lebih besar, perbarui cNumTypeArgs
dengan ukuran baru yang lebih besar, dan panggil GetClassIDInfo2
lagi.
Atau, Anda dapat terlebih dahulu memanggil GetClassIDInfo2
dengan buffer typeArgs
dengan panjang nol untuk mendapatkan ukuran buffer yang benar. Kemudian, Anda dapat mengatur ukuran buffer typeArgs
ke nilai yang ditampilkan di pcNumTypeArgs
dan memanggil GetClassIDInfo2
lagi.
Persyaratan
Platform: Lihat Persyaratan Sistem.
Header: CorProf.idl, CorProf.h
Pustaka: CorGuids.lib
Versi .NET Framework: Tersedia mulai dari 2.0
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk