Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ponownie mapuje edytowaną funkcję, określając nowe przesunięcie wspólnego języka pośredniego (CIL)
Składnia
HRESULT RemapFunction (
[in] ULONG32 newILOffset
);
Parametry
newILOffset [in] Nowy przesunięcie CIL ramki stosu, w którym powinien zostać umieszczony wskaźnik instrukcji. Ta wartość musi być punktem sekwencji.
Obowiązkiem obiektu wywołującego jest zapewnienie ważności tej wartości. Na przykład przesunięcie CIL jest nieprawidłowe, jeśli znajduje się poza granicami funkcji.
Uwagi
Gdy funkcja ramki została edytowana, debuger może wywołać RemapFunction metodę zamiany w najnowszej wersji funkcji ramki, aby można było ją wykonać. Wykonanie kodu rozpocznie się od danego przesunięcia CIL.
Uwaga / Notatka
Wywołanie metody RemapFunction, na przykład wywołanie elementu ICorDebugILFrame::SetIP, spowoduje natychmiastowe unieważnienie wszystkich interfejsów debugowania związanych z generowaniem śledzenia stosu dla wątku. Te interfejsy obejmują element ICorDebugChain, ICorDebugILFrame, ICorDebugInternalFrame i ICorDebugNativeFrame.
RemapFunction Metodę można wywołać tylko w kontekście bieżącej ramki i tylko w jednym z następujących przypadków:
Po otrzymaniu wywołania zwrotnego ICorDebugManagedCallback2::FunctionRemapOpportunity , które nie zostało jeszcze kontynuowane.
Wykonanie kodu zostało zatrzymane z powodu zdarzenia ICorDebugManagedCallback::EditAndContinueRemap dla tej ramki.
Requirements
Platformy: Zobacz Obsługiwane systemy operacyjne platformy .NET.
Nagłówek: CorDebug.idl, CorDebug.h
Biblioteka: CorGuids.lib
Wersje platformy .NET: Dostępne od programu .NET Framework 2.0