DkmScriptInstructionSymbol Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Дкмскриптинструктионсимбол используется для представления исполняемого оператора в среде выполнения на основе скриптов, такой как механизм Microsoft JavaScript.
public ref class DkmScriptInstructionSymbol : Microsoft::VisualStudio::Debugger::Symbols::DkmInstructionSymbol
[Windows::Foundation::Metadata::WebHostHidden]
public ref class DkmScriptInstructionSymbol : Microsoft::VisualStudio::Debugger::Symbols::DkmInstructionSymbol
[Windows::Foundation::Metadata::WebHostHidden]
class DkmScriptInstructionSymbol : Microsoft::VisualStudio::Debugger::Symbols::DkmInstructionSymbol
[System.Runtime.InteropServices.Guid("aebaa0af-6437-2ecf-aaf1-86c58eba9447")]
public class DkmScriptInstructionSymbol : Microsoft.VisualStudio.Debugger.Symbols.DkmInstructionSymbol
[<System.Runtime.InteropServices.Guid("aebaa0af-6437-2ecf-aaf1-86c58eba9447")>]
type DkmScriptInstructionSymbol = class
inherit DkmInstructionSymbol
Public Class DkmScriptInstructionSymbol
Inherits DkmInstructionSymbol
- Наследование
- Атрибуты
Свойства
| AdditionalData |
Используемых Дополнительные данные, зависящие от среды выполнения, связанные с адресом. Эти данные не будут использоваться при сравнении адресов. |
| Document |
Документ, содержащий эту инструкцию. |
| Module |
Класс Дкммодуле представляет набор кода (например, DLL или exe), который или один раз был загружен в один или несколько процессов. Класс Дкммодуле является центральным объектом для API символов и имеет 1:1 с нотацией обработчика символов, что загружается. Если набор кода загружается в три разных процесса (или один процесс, но с тремя разными базовыми адресами или с тремя разными доменами приложений), но обработчик символов считает все эти данные идентичными, будет существовать только один объект Module. (Унаследовано от DkmInstructionSymbol) |
| Revision |
Указывает номер редакции, который вставил инструкцию, представленную этим объектом. Как правило, для нединамических документов это значение будет равно нулю. |
| RuntimeType |
Идентификатор среды выполнения определяет среду выполнения для определенного фрагмента кода. Идентификаторы среды выполнения используются диспетчером для выбора монитора для отправки. Обратите внимание, что порядок идентификаторов GUID для идентификатора среды выполнения довольно важен, так как он определяет, какая из сред выполнения получает первый снимок во время арбитража. Таким же, если требуется объявить новый экземпляр среды выполнения, построенный на основе среды CLR, идентификатор среды выполнения должен быть меньше Дкмрунтимеид. CLR. (Унаследовано от DkmInstructionSymbol) |
| StartIndex |
Указывает начальный индекс символа этой инструкции относительно начала редакции, которая вставила эту инструкцию. |
| StatementLength |
Длина оператора (в символах). |
| TagValue |
Дкминструктионсимбол является абстрактным базовым классом. Это перечисление указывает, какой производный класс этот объект является экземпляром. (Унаследовано от DkmInstructionSymbol) |
Методы
| Bind(DkmModuleInstance) |
Привязывает символ инструкции к конкретному экземпляру модуля. Символ инструкции подключается к Дкммодуле, а не к Дкммодулеинстанце, поэтому он не привязан к определенному процессу, домену приложения или базовому адресу модуля. (Унаследовано от DkmInstructionSymbol) |
| Create(DkmModule, Guid, DkmScriptDocument, Int32, Int32, Int32, ReadOnlyCollection<Byte>) |
Создайте новый экземпляр объекта Дкмскриптинструктионсимбол. |
| GetAlternateSourcePosition(DkmSourcePositionFlags) |
Возвращает альтернативное расположение исходного файла (например, example.cs, строка 12) для этого символа инструкции. В настоящее время этот параметр используется в сценариях сопоставления исходного кода для возврата исходного (несопоставленного) исходного расположения. Этот API будет вызываться в пользовательском интерфейсе отладчика в случаях, когда не удается найти основное расположение источника. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). Этот API появился в Visual Studio 12 с обновлением 3 (Дкмапиверсион. VS12Update3). (Унаследовано от DkmInstructionSymbol) |
| GetBasicInfo(DkmWorkList, DkmModuleInstance, DkmBasicSymbolInfoRequestFlags, DkmCompletionRoutine<DkmGetBasicSymbolInfoAsyncResult>) |
Асинхронно высчитывает базовые символьные сведения для заданного Дкминструктионсимбол. Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). Этот API появился в Visual Studio 16 RTM (Дкмапиверсион. VS16RTMPreview). (Унаследовано от DkmInstructionSymbol) |
| GetCompilerId(DkmInspectionSession) |
Возвращает идентификатор компилятора (LanguageId/VendorId) для заданного символа. Для модуля чтения PDB (Майкрософт), если PDB-файл был создан компилятором, который использовал ISymUnmanagedWriter, модуль чтения PDB сможет определить правильный Дкмкомпилерид из пары LanguageId/VendorId, передаваемой из ISymUnmanagedWriter. DefineDocument. Если файл PDB был создан компилятором, который не использовал ISymUnmanagedWriter, модуль чтения PDB может получить Дкмкомпилерид из записей S_COMPILE * PDB. Чтобы это работало, компилятор должен сначала создать запись S_COMPILE * для каждого компилируемого объекта. Компилятор должен правильно заполнить значение перечисления языков и строку компилятора. Компилятор должен убедиться, что строка компилятора достаточно специфична для использования при выборе средства оценки выражений. рекомендуется включить название компании. После выпуска пары "перечисление-имя" программа установки для оценки выражений должна зарегистрировать эту пару с помощью отладчика. Для этого средство оценки выражений должно установить следующий раздел реестра: компиляторы%Всрегистрирут%\дебугжер\кодевиев % кодевиевлангуажекоде%:% компилернаме% и определить VendorID/LanguageId. (Унаследовано от DkmInstructionSymbol) |
| GetCompilerId(DkmWorkList, DkmInspectionSession, DkmCompletionRoutine<DkmGetCompilerIdAsyncResult>) |
Возвращает идентификатор компилятора (LanguageId/VendorId) для заданного символа. Для модуля чтения PDB (Майкрософт), если PDB-файл был создан компилятором, который использовал ISymUnmanagedWriter, модуль чтения PDB сможет определить правильный Дкмкомпилерид из пары LanguageId/VendorId, передаваемой из ISymUnmanagedWriter. DefineDocument. Если файл PDB был создан компилятором, который не использовал ISymUnmanagedWriter, модуль чтения PDB может получить Дкмкомпилерид из записей S_COMPILE * PDB. Чтобы это работало, компилятор должен сначала создать запись S_COMPILE * для каждого компилируемого объекта. Компилятор должен правильно заполнить значение перечисления языков и строку компилятора. Компилятор должен убедиться, что строка компилятора достаточно специфична для использования при выборе средства оценки выражений. рекомендуется включить название компании. После выпуска пары "перечисление-имя" программа установки для оценки выражений должна зарегистрировать эту пару с помощью отладчика. Для этого средство оценки выражений должно установить следующий раздел реестра: компиляторы%Всрегистрирут%\дебугжер\кодевиев % кодевиевлангуажекоде%:% компилернаме% и определить VendorID/LanguageId. Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). Этот API появился в Visual Studio 16 RTM (Дкмапиверсион. VS16RTMPreview). (Унаследовано от DkmInstructionSymbol) |
| GetCurrentStatementRange() |
Этот метод возвращает диапазон значений смещения IL, который содержит текущее смещение IL, как указано в адресе инструкции. Ограничение расположения: API должен вызываться из компонента монитора (уровень компонентов < 100 000). (Унаследовано от DkmInstructionSymbol) |
| GetDisassemblyLabel(DkmInspectionSession) |
Возвращает имя символа, которое должно отображаться в окне дизассемблирования. Для кода Microsoft C++ это имя основано на имени общедоступного символа. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). (Унаследовано от DkmInstructionSymbol) |
| GetEmbeddedDocument() |
Возвращает внедренный документ, содержащий этот символ. Возвращает S_FALSE, если внедренный документ не существует. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). Этот API появился в Visual Studio 15 с обновлением 5 (Дкмапиверсион. VS15Update5). (Унаследовано от DkmInstructionSymbol) |
| GetGPUInstructionMetadataCallback(DkmInstructionAddress, DkmInstructionSymbol) |
Этот метод возвращает сведения об адресе монитору отладки GPU. (Унаследовано от DkmInstructionSymbol) |
| GetInlineFramesCount(DkmBasicSymbolInfoRequestFlags) |
Возвращает количество встроенных кадров на заданном символе инструкции. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). Этот API появился в Visual Studio 16 RTM (Дкмапиверсион. VS16RTMPreview). (Унаследовано от DkmInstructionSymbol) |
| GetInlineFramesCount(DkmWorkList, DkmBasicSymbolInfoRequestFlags, DkmCompletionRoutine<DkmGetInlineFramesCountAsyncResult>) |
Возвращает количество встроенных кадров на заданном символе инструкции. Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). Этот API появился в Visual Studio 16 RTM (Дкмапиверсион. VS16RTMPreview). (Унаследовано от DkmInstructionSymbol) |
| GetInlineSourcePosition(DkmStackWalkFrame, Boolean) |
Возвращает расположение исходного файла (например, example.cs, строка 12) символа инструкции по указанному номеру встроенного кадра. Если этот символ инструкции не связан с исходным файлом, возвращается значение null (S_FALSE код возврата в машинном коде). Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). Этот API появился в Visual Studio 15 RTM (Дкмапиверсион. VS15RTM). (Унаследовано от DkmInstructionSymbol) |
| GetInlineSourcePosition(DkmWorkList, DkmStackWalkFrame, DkmCompletionRoutine<DkmGetInlineSourcePositionAsyncResult>) |
Возвращает расположение исходного файла (например, example.cs, строка 12) символа инструкции по указанному номеру встроенного кадра. Если этот символ инструкции не связан с исходным файлом, возвращается значение null (S_FALSE код возврата в машинном коде). Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). Этот API появился в Visual Studio 15 RTM (Дкмапиверсион. VS15RTM). (Унаследовано от DkmInstructionSymbol) |
| GetNextSteppingAction(DkmScriptInstructionSymbol, Boolean) |
Выполните обратный вызов, реализованный поставщиком символов скрипта, чтобы сообщить монитору отладки сценария, что делать дальше при пошаговом выполнении. Ограничение расположения: API должен вызываться из компонента монитора (уровень компонентов < 100 000). |
| GetNoSourceRanges() |
Запрашивает поставщик символов для определения диапазонов инструкций, которые не соответствуют инструкциям исходного кода пользователя и используются базовым монитором отладки для постоянного пошагового выполнения. (Унаследовано от DkmInstructionSymbol) |
| GetSourcePosition(DkmSourcePositionFlags, DkmInspectionSession, Boolean) |
Возвращает расположение исходного файла (например, example.cs, строка 12) этого символа инструкции. Если этот символ инструкции не связан с исходным файлом, возвращается значение null (S_FALSE код возврата в машинном коде). Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). (Унаследовано от DkmInstructionSymbol) |
| GetSourcePosition(DkmWorkList, DkmSourcePositionFlags, DkmInspectionSession, DkmCompletionRoutine<DkmGetSourcePositionAsyncResult>) |
Возвращает расположение исходного файла (например, example.cs, строка 12) этого символа инструкции. Если этот символ инструкции не связан с исходным файлом, возвращается значение null (S_FALSE код возврата в машинном коде). Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). (Унаследовано от DkmInstructionSymbol) |
| GetSourcePositionCallback(DkmSourcePositionFlags, DkmInspectionSession, Boolean) |
Возвращает расположение исходного файла (например, example.cs, строка 12) этого символа инструкции. Если этот символ инструкции не связан с исходным файлом, возвращается значение null (S_FALSE код возврата в машинном коде). Ограничение расположения: API должен вызываться из компонента монитора (уровень компонентов < 100 000). (Унаследовано от DkmInstructionSymbol) |
| GetSourcePositionCallback(DkmWorkList, DkmSourcePositionFlags, DkmInspectionSession, DkmCompletionRoutine<DkmGetSourcePositionCallbackAsyncResult>) |
Возвращает расположение исходного файла (например, example.cs, строка 12) этого символа инструкции. Если этот символ инструкции не связан с исходным файлом, возвращается значение null (S_FALSE код возврата в машинном коде). Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения. Ограничение расположения: API должен вызываться из компонента монитора (уровень компонентов < 100 000). (Унаследовано от DkmInstructionSymbol) |
| GetSteppingRanges(DkmSteppingRangeBoundary, Boolean) |
Запрашивает поставщик символов для определения диапазонов инструкций, на которые базовый монитор отладки должен выполнить шаг, чтобы реализовать шаг. Ограничение расположения: API должен вызываться из компонента монитора (уровень компонентов < 100 000). (Унаследовано от DkmInstructionSymbol) |
| GetUserCodeSourcePositionCallback(DkmInspectionSession) |
Возвращает расположение исходного файла (например, example.cs, строка 12) этого символа инструкции. Если этот символ инструкции не связан с исходным файлом или не находится в пользовательском коде, возвращается значение null (E_INSTRUCTION_NO_SOURCE код возврата). Ограничение расположения: API должен вызываться из компонента монитора (уровень компонентов < 100 000). (Унаследовано от DkmInstructionSymbol) |
| GetUserCodeSourcePositionCallback(DkmWorkList, DkmInspectionSession, DkmCompletionRoutine<DkmGetUserCodeSourcePositionCallbackAsyncResult>) |
Возвращает расположение исходного файла (например, example.cs, строка 12) этого символа инструкции. Если этот символ инструкции не связан с исходным файлом или не находится в пользовательском коде, возвращается значение null (E_INSTRUCTION_NO_SOURCE код возврата). Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения. Ограничение расположения: API должен вызываться из компонента монитора (уровень компонентов < 100 000). (Унаследовано от DkmInstructionSymbol) |
| HasEmbeddedDocument() |
Проверяет, имеет ли заданный символ внедренный документ. Внедренные документы — это когда исходный файл (например: main.cs) внедряется в файл символов (например, example. pdb). Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). Этот API появился в Visual Studio 15 с обновлением 8 (Дкмапиверсион. VS15Update8). (Унаследовано от DkmInstructionSymbol) |
| HasLineInfo() |
Запрашивает у поставщика символов сведения о строке. Используется монитором отладки для определения того, может ли расположение рассматриваться как пользовательский код. Ограничение расположения: для обычных символов можно вызывать из любого компонента. Для динамических символов можно вызывать только на стороне сервера. (Унаследовано от DkmInstructionSymbol) |
| HasLineInfo(DkmWorkList, DkmCompletionRoutine<DkmHasLineInfoAsyncResult>) |
Запрашивает у поставщика символов сведения о строке. Используется монитором отладки для определения того, может ли расположение рассматриваться как пользовательский код. Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения. Ограничение расположения: для обычных символов можно вызывать из любого компонента. Для динамических символов можно вызывать только на стороне сервера. (Унаследовано от DkmInstructionSymbol) |
| IsHiddenCode(DkmWorkList, DkmInspectionSession, DkmInstructionAddress, DkmCompletionRoutine<DkmIsHiddenCodeAsyncResult>) |
Возвращает значение, если этот символ инструкции находится в скрытом коде. Например, в управляемом коде номер строки 0xfeefee помечает исходную строку как скрытую. Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения. Ограничение расположения: API должен вызываться из компонента IDE (уровень компонентов > 100 000). (Унаследовано от DkmInstructionSymbol) |