Поделиться через


DkmPendingFileLineBreakpoint Класс

Определение

Ожидание точки останова, запрашиваемой для привязки к элементам кода, указывающим на диапазон текста в исходном файле.

public ref class DkmPendingFileLineBreakpoint : Microsoft::VisualStudio::Debugger::Breakpoints::DkmPendingBreakpoint
[System.Runtime.InteropServices.Guid("ea7b0aee-1cc5-a887-4dff-930fc23a6278")]
public class DkmPendingFileLineBreakpoint : Microsoft.VisualStudio.Debugger.Breakpoints.DkmPendingBreakpoint
[<System.Runtime.InteropServices.Guid("ea7b0aee-1cc5-a887-4dff-930fc23a6278")>]
type DkmPendingFileLineBreakpoint = class
    inherit DkmPendingBreakpoint
Public Class DkmPendingFileLineBreakpoint
Inherits DkmPendingBreakpoint
Наследование
Наследование
DkmPendingFileLineBreakpoint
Атрибуты

Свойства

CompilerId

Определяет исходный язык (например, C#) и поставщика компилятора (например, Майкрософт), к которым должна быть привязана точка останова. Значение LanguageId можно оставить как Guid.Empty, чтобы указать, что точка останова должна быть привязана ко всем языкам. "VendorId" почти всегда остается как Guid.Empty, что указывает, что известен только язык (не компилятор).

(Унаследовано от DkmPendingBreakpoint)
IsBarrier

Указывает, является ли эта точка останова барьером, который должен быть установлен на оборудовании, это работает для отладки GPU.

(Унаследовано от DkmPendingBreakpoint)
IsUnloaded

Возвращает значение true, если для этого объекта было инициировано событие "unloaded" (например, вызывается DkmThread::Unload) или если объект был закрыт. Обратите внимание, что при проверке этого состояния необходимо соблюдать осторожность, так как без синхронизации возвращаемое состояние может быть не точным после чтения инструкции.

(Унаследовано от DkmDataContainer)
Process

DkmProcess представляет отлаживаемый целевой процесс. Отладчик отлаживать процессы, поэтому это базовая единица отладки. DkmProcess может представлять системный или виртуальный процесс, например минидампы.

(Унаследовано от DkmPendingBreakpoint)
SourceId

Идентифицирует источник объекта . SourceId используются для включения фильтрации в сценариях, когда несколько компонентов могут создавать экземпляры класса. Например, исходные идентификаторы можно использовать для определения того, исходит ли точка останова из AD7 AL (например, точка останова пользователя или другая точка останова, видимая на уровне SDM), а не точка останова, которая может быть создана другим компонентом (например, внутренней точкой останова, используемой для пошагового выполнения).

(Унаследовано от DkmPendingBreakpoint)
TagValue

DkmPendingBreakpoint является абстрактным базовым классом. Это перечисление указывает, какой производный класс является экземпляром этого объекта.

(Унаследовано от DkmPendingBreakpoint)
Thread

[Необязательно] Поток, в котором должна запускаться эта точка останова. Если значение равно null, точка останова срабатывает во всех потоках.

(Унаследовано от DkmPendingBreakpoint)
UniqueId

Guid, который однозначно идентифицирует этот объект точки останова в ожидании.

(Унаследовано от DkmPendingBreakpoint)

Методы

Close()

Закрывает экземпляр объекта DkmPendingBreakpoint. Это позволит освободить все ресурсы, связанные с этим объектом, во всех компонентах. Сюда входят ресурсы в пределах компьютеров или управляемых или собственных границ маршалинга.

Объекты DkmPendingBreakpoint автоматически закрываются при закрытии связанного с ними объекта DkmProcess.

Этот метод может вызываться только компонентом, создавший объект .

(Унаследовано от DkmPendingBreakpoint)
Create(DkmProcess, Guid, DkmCompilerId, DkmThread, Boolean, DkmDataItem)

Создает новый объект точки останова в ожидании. После создания возвращаемый объект по-прежнему будет отключен и не будет отслеживаться диспетчером точек останова. Чтобы завершить инициализацию, вызывающий объект должен задать дополнительные свойства в точке останова и "Включить" или "Регистрация". Вызывающий объект отвечает за закрытие созданного объекта после их завершения.

Disable(DkmWorkList, DkmCompletionRoutine<DkmDisablePendingBreakpointAsyncResult>)

Отключите ожидающий объект точки останова, чтобы он больше не запускал. Если ожидающая точка останова уже привязана, все связанные точки останова будут неявно отключены.

Этот метод добавляет новый рабочий элемент в указанный рабочий список и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента является асинхронной. Вызывающий объект получит уведомление о том, что запрос завершен в рамках процедуры завершения.

Ограничение расположения: API должен вызываться из компонента IDE (уровень > компонента 100 000).

(Унаследовано от DkmPendingBreakpoint)
Enable(DkmWorkList, DkmCompletionRoutine<DkmEnablePendingBreakpointAsyncResult>)

Задает состояние ожидающей точки останова, чтобы получить попадание в экземпляры точки останова, которые привязываются в будущем. Если ожидающая точка останова еще не зарегистрирована, этот метод также регистрирует точку останова. Регистрация ожидающей точки останова заключается в попытке разрешить точку останова для всех модулей, которые загружены в данный момент, и добавлении точки останова в список точек останова, которые диспетчер точек останова привязывает к любой нагрузке модуля. Если ожидающая точка останова уже зарегистрирована, существующие привязанные точки останова не будут включены автоматически. Связанные точки останова должны быть включены отдельно.

Этот метод добавляет новый рабочий элемент в указанный рабочий список и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента является асинхронной. Вызывающий объект получит уведомление о том, что запрос завершен в рамках процедуры завершения.

Ограничение расположения: API должен вызываться из компонента IDE (уровень > компонента 100 000).

(Унаследовано от DkmPendingBreakpoint)
Enroll(DkmWorkList, DkmCompletionRoutine<DkmEnrollPendingBreakpointAsyncResult>)

Этот метод регистрирует ожидающие точки останова без ее включения. Результатом является точка останова, которую диспетчер точек останова попытается разрешить, но которая не срабатывает. Регистрация ожидающей точки останова заключается в попытке разрешить точку останова для всех модулей, которые загружены в данный момент, и добавлении точки останова в список точек останова, которые диспетчер точек останова привязывает к любой нагрузке модуля.

Этот метод добавляет новый рабочий элемент в указанный рабочий список и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента является асинхронной. Вызывающий объект получит уведомление о том, что запрос завершен в рамках процедуры завершения.

Ограничение расположения: API должен вызываться из компонента IDE (уровень > компонента 100 000).

(Унаследовано от DkmPendingBreakpoint)
GetBoundBreakpoints()

GetBoundBreakpoints перечисляет элементы DkmBoundBreakpoint этого объекта DkmPendingBreakpoint.

(Унаследовано от DkmPendingBreakpoint)
GetCurrentSourcePosition()

Возвращает текущее расположение точки останова файла или строки. В сценариях редактирования и продолжения расположение текстового маркера может измениться в сеансе отладки.

GetCurrentSourceText()

Возвращает текущий текст в расположении точки останова файла или строки.

GetDataItem<T>()

Возвращает экземпляр "T", добавленный в этот экземпляр контейнера. Если этот контейнер не содержит "T", эта функция возвращает значение NULL.

(Унаследовано от DkmDataContainer)
OnBreakpointBound(DkmBoundBreakpoint[])

Уведомление от диспетчера точек останова, когда точка останова привязана. В случае пользовательских точек останова это уведомление будет отправлено в AD7 AL, а AD7 AL запустит IDebugBreakpointBoundEvent2 в пользовательском интерфейсе отладчика Visual Studio.

(Унаследовано от DkmPendingBreakpoint)
OnBreakpointMessage(DkmBreakpointMessageLevel, DkmBreakpointSuggestedFix, Byte, String)

Уведомление от диспетчера точек останова о состоянии привязки точки останова.

Этот API появился в Visual Studio 17 с обновлением 6 (DkmApiVersion.VS17Update6).

(Унаследовано от DkmPendingBreakpoint)
OnBreakpointMessage(DkmBreakpointMessageLevel, DkmBreakpointSuggestedFix, String)

Уведомление от диспетчера точек останова о состоянии привязки точки останова.

Этот API появился в Visual Studio 17 с обновлением 4 (DkmApiVersion.VS17Update4).

(Унаследовано от DkmPendingBreakpoint)
OnBreakpointMessage(DkmBreakpointMessageLevel, String)

Уведомление от диспетчера точек останова о состоянии привязки точки останова.

(Унаследовано от DkmPendingBreakpoint)
OnBreakpointUnbound(DkmBoundBreakpoint[], DkmBreakpointUnboundReason)

Уведомление от диспетчера точек останова, указывающее, что заданная точка останова не связана.

(Унаследовано от DkmPendingBreakpoint)
OnHitWithError(DkmThread, Boolean, DkmBreakpointMessageLevel, String)

Вызовите событие Точки остановаHitWithError. Компоненты, реализующие интерфейс приемника событий, получат уведомление о событии. Этот метод будет поставить событие в очередь, а элемент управления немедленно вернется вызывающей объекту.

Этот API появился в Visual Studio 16 RTM (DkmApiVersion.VS16RTM).

(Унаследовано от DkmPendingBreakpoint)
RemoveDataItem<T>()

Удалите экземпляр T из этого контейнера. Обычно не требуется вызывать этот метод, так как контейнер данных автоматически очищается при закрытии объекта.

(Унаследовано от DkmDataContainer)
SetCondition(DkmWorkList, DkmBreakpointCondition, DkmCompletionRoutine<DkmSetPendingBreakpointConditionAsyncResult>)

Инициализируйте, обновите или очистите условие на уровне языка во всех связанных точках останова этого условия. Если в одной точке останова есть условие уровня языка и число попаданий, сначала применяется условие уровня языка.

Этот метод добавляет новый рабочий элемент в указанный рабочий список и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента является асинхронной. Вызывающий объект получит уведомление о том, что запрос завершен в рамках процедуры завершения.

Ограничение расположения: API должен вызываться из компонента IDE (уровень > компонента 100 000).

(Унаследовано от DkmPendingBreakpoint)
SetDataItem<T>(DkmDataCreationDisposition, T)

Поместите новый элемент в контейнер данных.

(Унаследовано от DkmDataContainer)
SetHitCountCondition(DkmWorkList, DkmBreakpointHitCountCondition, DkmCompletionRoutine<DkmSetPendingBreakpointHitCountConditionAsyncResult>)

Инициализация, обновление или очистка условия счетчика попаданий во всех связанных точках останова этой ожидающей точки останова. Если в одной точке останова есть условие уровня языка и число попаданий, сначала применяется условие уровня языка.

Обратите внимание, что условие счетчика попаданий действует независимо для каждой привязанной точки останова, а не агрегируется в ожидающей точке останова. Например, если счетчик попаданий настроен так, чтобы остановиться при нажатии 2, а точка останова находится в двух отдельных местах, каждое из которых достигло точки останова один раз, пользовательский интерфейс по-прежнему не перейдет в режим останова, так как ни отдельная связанная точка останова не попала дважды.

Этот метод добавляет новый рабочий элемент в указанный рабочий список и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента является асинхронной. Вызывающий объект получит уведомление о том, что запрос завершен в рамках процедуры завершения.

Ограничение расположения: API должен вызываться из компонента IDE (уровень > компонента 100 000).

(Унаследовано от DkmPendingBreakpoint)

Явные реализации интерфейса

IDisposable.Dispose()

Ожидание точки останова, запрашиваемой для привязки к элементам кода, указывающим на диапазон текста в исходном файле.

(Унаследовано от DkmPendingBreakpoint)

Применяется к