Bagikan melalui


Metode ICorProfilerInfo::GetILToNativeMapping

Mendapatkan peta dari offset bahasa perantara umum (CIL) ke offset asli untuk kode yang terkandung dalam fungsi yang ditentukan.

Syntax

HRESULT GetILToNativeMapping(
    [in] FunctionID functionId,
    [in] ULONG32 cMap,
    [out] ULONG32 *pcMap,
    [out, size_is(cMap), length_is(*pcMap)]
        COR_DEBUG_IL_TO_NATIVE_MAP map[]);

Parameter-parameternya

functionId [di] ID fungsi yang berisi kode.

cMap [di] Ukuran map maksimum array.

pcMap [out] Jumlah total struktur COR_DEBUG_IL_TO_NATIVE_MAP yang tersedia.

map [out] Array COR_DEBUG_IL_TO_NATIVE_MAP struktur, yang masing-masing menentukan offset. GetILToNativeMapping Setelah metode kembali, map akan berisi beberapa atau semua COR_DEBUG_IL_TO_NATIVE_MAP struktur.

Komentar

Metode mengembalikan GetILToNativeMapping array COR_DEBUG_IL_TO_NATIVE_MAP struktur. Untuk menyampaikan bahwa rentang instruksi asli tertentu sesuai dengan wilayah kode khusus (misalnya, prolog), entri dalam array dapat mengatur bidangnya ilOffset ke nilai enumerasi CorDebugIlToNativeMappingTypes .

Setelah GetILToNativeMapping kembali, Anda harus memverifikasi bahwa map buffer cukup besar untuk berisi semua COR_DEBUG_IL_TO_NATIVE_MAP struktur. Untuk melakukan ini, bandingkan nilai cMap dengan nilai pcMap parameter . pcMap Jika nilai, ketika dikalikan dengan ukuran COR_DEBUG_IL_TO_NATIVE_MAP struktur, lebih besar dari , alokasikan buffer yang lebih cMapbesarmap, perbarui cMap dengan ukuran baru yang lebih besar, dan panggil GetILToNativeMapping lagi.

Atau, Anda dapat terlebih dahulu memanggil GetILToNativeMapping dengan buffer panjang map nol untuk mendapatkan ukuran buffer yang benar. Anda kemudian dapat mengatur ukuran buffer ke nilai yang dikembalikan pcMap dan memanggil GetILToNativeMapping lagi.

Persyaratan

Platform: Lihat Persyaratan Sistem.

Header: CorProf.idl, CorProf.h

Perpustakaan: CorGuids.lib

Versi .NET Framework: Tersedia sejak 2.0

Lihat juga