Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Získá mapu z běžných mezilehlých jazyků (CIL) posuny na nativní posuny kódu obsaženého v zadané funkci.
Syntaxe
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[]);
Parametry
functionId [v] ID funkce, která obsahuje kód.
cMap [v] Maximální velikost map pole.
pcMap [ven] Celkový počet dostupných COR_DEBUG_IL_TO_NATIVE_MAP struktur.
map [ven] Pole COR_DEBUG_IL_TO_NATIVE_MAP struktur, z nichž každá určuje posuny.
GetILToNativeMapping Po vrácení map metody bude obsahovat některé nebo všechny COR_DEBUG_IL_TO_NATIVE_MAP struktury.
Poznámky
Metoda GetILToNativeMapping vrátí pole COR_DEBUG_IL_TO_NATIVE_MAP struktur. Aby bylo možné sdělit, že určité oblasti nativních instrukcí odpovídají speciálním oblastem kódu (například prolog), může mít položka v poli nastavené pole ilOffset na hodnotu CorDebugIlToNativeMappingTypes výčtu .
Po GetILToNativeMapping vrácení musíte ověřit, že map vyrovnávací paměť byla dostatečně velká, aby obsahovala všechny COR_DEBUG_IL_TO_NATIVE_MAP struktury. Uděláte to tak, že porovnáte hodnotu cMap s hodnotou parametru pcMap .
pcMap Pokud je hodnota vynásobená velikostí COR_DEBUG_IL_TO_NATIVE_MAP struktury, je větší než cMap, přidělit větší map vyrovnávací paměť, aktualizovat cMap novou, větší velikost a znovu zavolatGetILToNativeMapping.
Případně můžete nejprve zavolat GetILToNativeMapping vyrovnávací paměť s nulovou délkou map , abyste získali správnou velikost vyrovnávací paměti. Velikost vyrovnávací paměti pak můžete nastavit na hodnotu vrácenou a pcMap znovu zavolat GetILToNativeMapping .
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: CorProf.idl, CorProf.h
Knihovna: CorGuids.lib
Verze rozhraní .NET Framework: K dispozici od verze 2.0