Интерфейсы отладки
В этом разделе описываются неуправляемые интерфейсы отладки, управляющие отладкой программы, выполняемой в среде CLR.
В этом разделе
Интерфейс ICLRDataEnumMemoryRegions
Предоставляет метод, выполняющий перечисление областей памяти, заданной вызовами.
Интерфейс ICLRDataEnumMemoryRegionsCallback
Предоставляет метод обратного вызова для метода EnumMemoryRegions
, сообщающий отладчику результат попытки перечисления заданной области памяти.
Интерфейс ICLRDataTarget
Предоставляет методы для взаимодействия с целевым процессом среды CLR.
Интерфейс ICLRDataTarget2
Подкласс ICLRDataTarget
, используемый уровнем служб доступа к данным с целью управления областями виртуальной памяти в целевом процессе.
Интерфейс ICLRDataTarget3
Подкласс ICLRDataTarget2, предоставляющий доступ к сведениям об исключениях.
Интерфейс ICLRDebugging
Предоставляет методы, обрабатывающие загрузку и выгрузку модулей для отладки.
Интерфейс ICLRDebuggingLibraryProvider
Включает метод Метода ProvideLibrary, который получает интерфейс обратного вызова поставщика библиотеки, который позволяет находить и загружать библиотеки отладки для конкретной версии среды cl language.
Интерфейс ICLRMetadataLocator
Интерфейс, используемый уровнем служб доступа к данным для определения местонахождения метаданных сборок в целевом процессе.
Интерфейс ICorDebug
Предоставляет методы, позволяющие разработчикам отлаживать приложения в среде CLR.
Интерфейс ICorDebugAppDomain
Предоставляет методы для отладки доменов приложения.
Интерфейс ICorDebugAppDomain2
Предоставляет методы для работы с массивами, указателями, указателями функций и типами ByRef. Этот интерфейс является расширением интерфейса ICorDebugAppDomain
.
Интерфейс ICorDebugAppDomain3
Предоставляет методы для работы с типами среда выполнения Windows в домене приложения. Этот интерфейс является расширением интерфейса ICorDebugAppDomain
и ICorDebugAppDomain2
.
Интерфейс ICorDebugAppDomain4
Логически расширяет интерфейс ICorDebugAppDomain , чтобы получить управляемый объект из вызываемого оболочки COM.
Интерфейс ICorDebugAppDomainEnum
Предоставляет метод, возвращающий заданное число значений ICorDebugAppDomain
, начиная со следующего расположения в перечислении.
Интерфейс ICorDebugArrayValue
Подкласс интерфейса ICorDebugHeapValue
, представляющий одномерный или многомерный массив.
Интерфейс ICorDebugAssembly
Представляет сборку.
Интерфейс ICorDebugAssembly2
Представляет сборку. Этот интерфейс является расширением интерфейса ICorDebugAssembly
.
Интерфейс ICorDebugAssembly3
Логически расширяет интерфейс ICorDebugAssembly , чтобы обеспечить поддержку сборок контейнеров и их содержащихся сборок. Доступно только в .NET Native.
Интерфейс ICorDebugAssemblyEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugAssembly
.
Интерфейс ICorDebugBlockingObjectEnum
Предоставляет перечислитель для списка структур CorDebugBlockingObject .
Интерфейс ICorDebugBoxValue
Подкласс интерфейса ICorDebugHeapValue
, представляющий упакованное значение объектов класса.
Интерфейс ICorDebugBreakpoint
Представляет точку останова в функции или контрольную точку для значения.
Интерфейс ICorDebugBreakpointEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugBreakpoint
.
Интерфейс ICorDebugChain
Представляет сегмент физического или логического стека вызовов.
Интерфейс ICorDebugChainEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugChain
.
Интерфейс ICorDebugClass
Представляет тип, который может быть базовым или сложным (иными словами, пользовательским). Если тип универсальный, ICorDebugClass
представляет универсальный тип, у которого отсутствуют экземпляры.
Интерфейс ICorDebugClass2
Представляет универсальный класс или класс параметром метода типа Type. Этот интерфейс расширяет интерфейс ICorDebugClass
.
Интерфейс ICorDebugCode
Представляет сегмент кода общей промежуточной среды (CIL) или машинного кода.
Интерфейс ICorDebugCode2
Предоставляет методы, расширяющие возможности интерфейса ICorDebugCode
.
Интерфейс ICorDebugCode3
Предоставляет метод, расширяющий ICorDebugCode и ICorDebugCode2 для предоставления сведений об управляемом возвращаемом значении.
Интерфейс ICorDebugCode4
Предоставляет метод, позволяющий отладчику перечислять локальные переменные и аргументы в функции.
Интерфейс ICorDebugCodeEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugCode
.
Интерфейс ICorDebugComObjectValue
Предоставляет методы для получения кэшированных объектов интерфейса.
Интерфейс ICorDebugContext
Представляет объект контекста. Этот интерфейс еще не реализован.
Интерфейс ICorDebugController
Представляет область (Process или AppDomain), в которой можно осуществлять управление контекстом выполнения кода.
Интерфейс ICorDebugDataTarget
Предоставляет интерфейс обратного вызова, обеспечивающий доступ к конкретному целевому процессу.
Интерфейс ICorDebugDataTarget2
Логически расширяет интерфейс ICorDebugDataTarget . Доступно только в .NET Native.
Интерфейс ICorDebugDataTarget3
Логически расширяет интерфейс ICorDebugDataTarget для предоставления сведений о загруженных модулях. Доступно только в .NET Native.
Интерфейс ICorDebugDebugEvent
Определяет базовый интерфейс, из которого возникают все события отладки ICorDebug
. Доступно только в .NET Native.
Интерфейс ICorDebugEditAndContinueErrorInfo
Является устаревшей. Не следует использовать данный интерфейс.
Интерфейс ICorDebugEditAndContinueSnapshot
Является устаревшей. Не следует использовать данный интерфейс.
Интерфейс ICorDebugEnum
Служит абстрактным базовым интерфейсом для перечислителей отладки.
Интерфейс ICorDebugErrorInfoEnum
Является устаревшей. Не следует использовать данный интерфейс.
Интерфейс ICorDebugEval
Предоставляет методы, позволяющие отладчику выполнять код в контексте отлаживаемого кода.
Интерфейс ICorDebugEval2
Расширяет интерфейс ICorDebugEval
для предоставления поддержки универсальных типов.
Интерфейс ICorDebugExceptionDebugEvent
Расширяет интерфейс ICorDebugDebugEvent для поддержки событий исключений. Доступно только в .NET Native.
Интерфейс ICorDebugExceptionObjectCallStackEnum
Предоставляет перечислитель для сведений стека вызовов, встроенных в объект исключения.
Интерфейс ICorDebugExceptionObjectValue
Расширяет интерфейс ICorDebugObjectValue, чтобы предоставить сведения трассировки стека из управляемого объекта исключения.
Интерфейс ICorDebugFrame
Представляет кадр текущего стека.
Интерфейс ICorDebugFrameEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugFrame
.
Интерфейс ICorDebugFunction
Представляет управляемую функцию или метод.
Интерфейс ICorDebugFunction2
Локально расширяет интерфейс ICorDebugFunction
для предоставления поддержки отладки в пошаговом режиме "Только мой код".
Интерфейс ICorDebugFunction3
Логически расширяет интерфейс ICorDebugFunction для предоставления доступа к коду из запроса ReJIT.
Интерфейс ICorDebugFunctionBreakpoint
Расширяет интерфейс ICorDebugBreakpoint
для поддержки точек останова в функциях.
Интерфейс ICorDebugGCReferenceEnum
Предоставляет перечислитель для объектов, для которых будет выполнена сборка мусора.
Интерфейс ICorDebugGenericValue
Подкласс интерфейса ICorDebugValue
, применяемый ко всем значениям. Этот интерфейс предоставляет для значения методы Get и Set.
Интерфейс ICorDebugGuidToTypeEnum
Предоставляет перечислитель для объекта, сопоставляющего идентификаторы GUID и соответствующие объекты ICorDebugType
.
Интерфейс ICorDebugHandleValue
Подкласс интерфейса ICorDebugReferenceValue
, представляющий значение ссылки, для которого отладчик создал дескриптор сборки мусора.
Интерфейс ICorDebugHeapEnum
Предоставляет перечислитель для объектов в управляемой куче.
Интерфейс ICorDebugHeapSegmentEnum
Предоставляет перечислитель для областей памяти управляемой кучи.
Интерфейс ICorDebugHeapValue
Подкласс интерфейса ICorDebugValue
, представляющий объект, подобранный сборщиком мусора среды CLR.
Интерфейс ICorDebugHeapValue2
Расширение интерфейса ICorDebugHeapValue
, предоставляющее поддержку дескрипторов среды выполнения.
Интерфейс ICorDebugHeapValue3
Предоставляет свойства блокировки монитора объектов.
Интерфейс ICorDebugILCode
Представляет сегмент кода промежуточного языка.
Интерфейс ICorDebugILCode2
Логически расширяет интерфейс ICorDebugILCode , предоставляя методы, возвращающие маркер для сигнатуры локальной переменной функции, и сопоставляющие смещения инструментированного промежуточного языка профилировщика с исходными смещениями IL метода.
Интерфейс ICorDebugILFrame
Представляет кадр стека кода CIL.
Интерфейс ICorDebugILFrame2
Логическое расширение интерфейса ICorDebugILFrame
.
Интерфейс ICorDebugILFrame3
Предоставляет метод, инкапсулирующий возвращаемое значение функции.
Интерфейс ICorDebugILFrame4
Предоставляет методы, обеспечивающие доступ к локальным переменным и коду в кадре стека кода промежуточного языка. Параметр показывает, имеет ли отладчик доступ к переменным и коду, добавленным в инструментарий ReJIT профилировщика.
Интерфейс ICorDebugInstanceFieldSymbol
Представляет сведения отладочного символа для поля экземпляра. Доступно только в .NET Native.
Интерфейс ICorDebugInternalFrame
Задает типы кадров для отладчика.
Интерфейс ICorDebugInternalFrame2
Предоставляет сведения о внутренних кадрах, включая адрес стека и положение в отношении объектов ICorDebugFrame .
Интерфейс ICorDebugLoadedModule
Предоставляет сведения о загруженном модуле. Доступно только в .NET Native.
Интерфейс ICorDebugManagedCallback
Предоставляет методы для обработки обратных вызовов отладчика.
Интерфейс ICorDebugManagedCallback2
Предоставляет методы для поддержки обработки исключений отладчика и управляемых помощников по отладке (MDA). Интерфейс ICorDebugManagedCallback2
является логическим расширением интерфейса ICorDebugManagedCallback
.
Интерфейс ICorDebugManagedCallback3
Предоставляет метод обратного вызова, указывающий, что создано включенное пользовательское уведомление отладчика.
Интерфейс ICorDebugMDA
Представляет сообщение управляемого помощника по отладке (MDA).
Интерфейс ICorDebugMemoryBuffer
Представляет буфер в памяти. Доступно только в .NET Native.
Интерфейс ICorDebugMergedAssemblyRecord
Предоставляет сведения о сборке после слияния. Доступно только в .NET Native.
Интерфейс ICorDebugMetaDataLocator
Предоставляет сведения о метаданных для отладчика.
Интерфейс ICorDebugModule
Представляет модуль среды CLR, который является либо исполняемым файлом, либо библиотекой динамической компоновки (DLL).
Интерфейс ICorDebugModule2
Служит логическим расширением интерфейса ICorDebugModule
.
Интерфейс ICorDebugModule3
Создает средство чтения символов для динамического модуля.
Интерфейс ICorDebugModule4
Предоставляет метод, определяющий, загружается ли модуль в память в сопоставленном или гидратированном формате.
Интерфейс ICorDebugModuleBreakpoint
Расширяет интерфейс ICorDebugBreakpoint
для предоставления доступа к указанным модулям.
Интерфейс ICorDebugModuleDebugEvent
Расширяет интерфейс ICorDebugDebugEvent для поддержки событий на уровне модуля. Доступно только в .NET Native.
Интерфейс ICorDebugModuleEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugModule
.
Интерфейс ICorDebugMutableDataTarget
Расширяет интерфейс ICorDebugDataTarget для поддержки мутируемых целевых объектов данных.
Интерфейс ICorDebugNativeFrame
Специализированная реализация интерфейса ICorDebugFrame
, используемая для кадров машинного кода.
Интерфейс ICorDebugNativeFrame2
Предоставляет методы, проверяющие для кадров наличие взаимоотношений типа "дочерний-родительский".
Интерфейс ICorDebugObjectEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов объектов по их относительным виртуальным адресам (RVA).
Интерфейс ICorDebugObjectValue
Подкласс ICorDebugValue
, представляющий значение, содержащее объект.
Интерфейс ICorDebugObjectValue2
Расширяет интерфейс ICorDebugObjectValue
для поддержки наследования и переопределений.
Интерфейс ICorDebugProcess
Представляет процесс, выполняющий управляемый код.
Интерфейс ICorDebugProcess2
Логическое расширение интерфейса ICorDebugProcess
.
Интерфейс ICorDebugProcess3
Управляет пользовательскими уведомлениями отладчика.
Интерфейс ICorDebugProcess4
Предоставляет поддержку вне элемента управления выполнением процесса.
Интерфейс ICorDebugProcess5
Расширяет интерфейс ICorDebugProcess для поддержки доступа к управляемой куче, предоставления сведений о сборке мусора управляемых объектов и определения того, загружает ли отладчик образы из локального собственного кэша образов приложения.
Интерфейс ICorDebugProcess6
Логически расширяет интерфейс ICorDebugProcess , чтобы включить такие функции, как декодирование управляемых событий отладки, закодированных в собственных событиях отладки исключений и разделение виртуального модуля. Доступно только в .NET Native.
Интерфейс ICorDebugProcess7
Предоставляет метод, который настраивает отладчик для обработки обновлений находящихся в памяти метаданных в целевом процессе.
Интерфейс ICorDebugProcess8
Логически расширяет интерфейс ICorDebugProcess , чтобы включить или отключить некоторые типы вызовов исключений ICorDebugManagedCallback2 .
Интерфейс ICorDebugProcess11
Предоставляет метод, перечисляющий диапазоны собственной памяти, которые используются средой выполнения .NET для хранения внутренних структур данных, описывающих типы и методы .NET. Возвращаемые сведения — это те же сведения, которые будут отображаться с помощью команды SOS eeheap -loader
.
Интерфейс ICorDebugProcessEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugProcess
.
Интерфейс ICorDebugReferenceValue
Подкласс интерфейса ICorDebugValue
, поддерживающего ссылочные типы.
Интерфейс ICorDebugRegisterSet
Представляет набор регистров, доступных для компьютера, на котором в данный момент выполняется код.
Интерфейс ICorDebugRegisterSet2
Расширяет возможности интерфейса ICorDebugRegisterSet
для аппаратных платформ, количество регистров которых превышает 64.
Интерфейс ICorDebugRemote
Позволяет запускать или подключать управляемый отладчик к удаленному целевому процессу.
Интерфейс ICorDebugRemoteTarget
Предоставляет методы, позволяющие отлаживать приложения на основе Silverlight в среде CLR.
Интерфейс ICorDebugRuntimeUnwindableFrame
Предоставляет поддержку для неуправляемых методов, которым требуется среда CLR для раскручивания кадра.
Интерфейс ICorDebugStackWalk
Обеспечивает методы для получения управляемых методов или кадров в стеке потока.
Интерфейс ICorDebugStaticFieldSymbol
Представляет сведения символа отладки для статического поля. Доступно только в .NET Native.
Интерфейс ICorDebugStepper
Представляет предпринимаемый отладчиком шаг при выполнении кода, служащий идентификатором на промежутке между подачей команды и ее завершением, а также предоставляет возможность отмены шага.
Интерфейс ICorDebugStepper2
Предоставляет поддержку отладки "Только мой код".
Интерфейс ICorDebugStepperEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugStepper
.
Интерфейс ICorDebugStringValue
Подкласс ICorDebugHeapValue
, применяемый к строковым значениям.
Интерфейс ICorDebugSymbolProvider
Предоставляет методы, которые могут использоваться для получения сведений об отладочных символах. Доступно только в .NET Native.
Интерфейс ICorDebugSymbolProvider2
Логически расширяет интерфейс ICorDebugSymbolProvider для получения дополнительных сведений о символах отладки. Доступно только в .NET Native.
Интерфейс ICorDebugThread
Представляет поток в процессе. Время существования экземпляра ICorDebugThread
равно времени существования потока, который он представляет.
Интерфейс ICorDebugThread2
Служит логическим расширением интерфейса ICorDebugThread
.
Интерфейс ICorDebugThread3
Предоставляет точку входа для ICorDebugStackWalk и соответствующих интерфейсов.
Интерфейс ICorDebugThread4
Предоставляет сведения о блокировке потока.
Интерфейс ICorDebugThreadEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugThread
.
Интерфейс ICorDebugType
Представляет тип, который может быть базовым или сложным (иными словами, пользовательским). Если тип универсален, интерфейс ICorDebugType
представляет универсальный тип с экземплярами.
Интерфейс ICorDebugType2
Расширяет интерфейс ICorDebugType, чтобы получить идентификатор типа базового типа или сложного (определяемого пользователем) типа.
Интерфейс ICorDebugTypeEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugType
.
Интерфейс ICorDebugUnmanagedCallback
Предоставляет уведомление о событиях машинного кода, которые не связаны непосредственно со средой CLR.
ICorDebugValue
Представляет значение для записи или чтения в отлаживаемом процессе.
ICorDebugValue2
Расширяет интерфейс ICorDebugValue
для предоставления поддержки интерфейса ICorDebugType
.
Интерфейс ICorDebugValue3
Расширяет интерфейсы ICorDebugValue и ICorDebugValue2, чтобы обеспечить поддержку массивов, размер которых превышает 2 ГБ.
ICorDebugValueBreakpoint
Расширяет интерфейс ICorDebugBreakpoint
для обеспечения доступа к указанным значениям.
ICorDebugValueEnum
Реализует методы ICorDebugEnum
и выполняет перечисление массивов ICorDebugValue
.
Интерфейс ICorDebugVariableHome
Представляет локальную переменную или аргумент функции.
Интерфейс ICorDebugVariableHomeEnum
Предоставляет перечислитель локальным переменным и аргументам в функции.
Интерфейс ICorDebugVariableSymbol
Извлекает сведения символа отладки для статического поля. Доступно только в .NET Native.
Интерфейс ICorDebugVirtualUnwinder
Предоставляет методы, помогающие очистить стек. Доступно только в .NET Native.
Интерфейс ICorPublish
Служит универсальным интерфейсом для процессов публикации.
Интерфейс ICorPublishAppDomain
Представляет и предоставляет информацию о домене приложения.
Интерфейс ICorPublishAppDomainEnum
Предоставляет методы, выполняющие перебор коллекции объектов ICorPublishAppDomain
, существующих в процессе в данный момент.
Интерфейс ICorPublishEnum
Служит абстрактной базой для перечислителей публикации.
Интерфейс ICorPublishProcess
Предоставляет методы, позволяющие получить доступ к сведениям о процессе.
Интерфейс ICorPublishProcessEnum
Предоставляет методы, выполняющие перебор коллекции объектов ICorPublishProcess
.
Интерфейс ISOSDacInterface
Предоставляет вспомогательные методы для доступа к данным из SOS
.
Интерфейс IXCLRDataAppDomain
Предоставляет методы для запроса сведений о домене приложения.
Интерфейс IXCLRDataExceptionNotification
Предоставляет набор обратных вызовов для уведомления вызывающего объекта об управляемых событиях.
Интерфейс IXCLRDataExceptionNotification2
Предоставляет набор обратных вызовов для уведомления вызывающего объекта об управляемых событиях.
Интерфейс IXCLRDataExceptionNotification3
Предоставляет набор обратных вызовов для уведомления вызывающего объекта об управляемых событиях.
Интерфейс IXCLRDataExceptionNotification4
Предоставляет набор обратных вызовов для уведомления вызывающего объекта об управляемых событиях.
Интерфейс IXCLRDataExceptionNotification5
Предоставляет набор обратных вызовов для уведомления вызывающего объекта об управляемых событиях.
Интерфейс IXCLRDataExceptionState
Предоставляет методы для запроса сведений об управляемом исключении.
Интерфейс IXCLRDataFrame
Предоставляет методы для запроса сведений о кадре стека
Интерфейс IXCLRDataMethodDefinition
Предоставляет методы для запроса сведений об определении метода.
Интерфейс IXCLRDataMethodInstance
Предоставляет методы для запроса сведений об экземпляре метода.
Интерфейс IXCLRDataModule
Предоставляет методы для запроса сведений о загруженном модуле.
Интерфейс IXCLRDataProcess
Предоставляет методы для запроса сведений о процессе.
Интерфейс IXCLRDataStackWalk
Предоставляет методы для обхода стека.
Интерфейс IXCLRDataTask
Предоставляет методы для запроса сведений об управляемой задаче.
Интерфейс IXCLRDataTypeDefinition
Предоставляет методы для запроса сведений о определении типа.
Интерфейс IXCLRDataTypeInstance
Предоставляет методы для запроса сведений об экземпляре типа.
Интерфейс IXCLRDataValue
Предоставляет методы для запроса сведений об управляемом значении.
Связанные разделы
Коклассы отладки
Глобальные статические функции отладки
Перечисления отладки
Структуры отладки\