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


DkmNativeModuleInstance Класс

Определение

DkmNativeModuleInstance используется для модулей, которые содержат код ЦП и (или) загружаются загрузчиком Win32.

public ref class DkmNativeModuleInstance : Microsoft::VisualStudio::Debugger::DkmModuleInstance
[System.Runtime.InteropServices.Guid("b7de7beb-acab-76c4-bd78-fbba698e4b65")]
public class DkmNativeModuleInstance : Microsoft.VisualStudio.Debugger.DkmModuleInstance
[<System.Runtime.InteropServices.Guid("b7de7beb-acab-76c4-bd78-fbba698e4b65")>]
type DkmNativeModuleInstance = class
    inherit DkmModuleInstance
Public Class DkmNativeModuleInstance
Inherits DkmModuleInstance
Наследование
Наследование
DkmNativeModuleInstance
Атрибуты

Свойства

BaseAddress

Начальный адрес памяти, где загружается модуль. Это значение всегда должно быть допустимым.

ClrHeaderStatus

Содержит сведения из поля "Флаги" IMAGE_COR20_HEADER загруженного модуля. Это указывает, какой тип двоичного файла был загружен.

Connection

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

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

Флаги, указывающие признаки DkmModuleInstance.

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

Полное имя модуля. Для файловых модулей это полный путь к модулю (например, c:\windows\system32\kernel32.dll.

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

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

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

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

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

Строковое описание контекста, в который был загружен этот модуль. Например, Win32 или CLR версии 2.0.50727: домен по умолчанию.

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

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

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

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

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

[Необязательно] MinidumpInfoPart используется для передачи дополнительных сведений о модулях в DkmProcess для минидампа.

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

[Необязательно] Представление обработчика символов модуля (DkmModule), связанного с этим экземпляром модуля. Изначально это значение равно NULL и присваивается, если с этим экземпляром модуля связаны символы.

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

Краткое представление имени модуля. Для файловых модулей это имя и расширение файла (например, kernel32.dll).

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

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

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

Представляет машинный код, выполняемый в целевом процессе.

Size

Число байтов в области памяти модуля.

SymbolFileId

[Необязательно] Содержит сведения, необходимые для поиска символов для этого модуля. В Win32 эти сведения содержатся в IMAGE_DEBUG_DIRECTORY.

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

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

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

Дата и время сборки загруженного модуля. Это значение получается из IMAGE_NT_HEADERS загруженного модуля. Единица измерения — это значение FILETIME, которое представляет собой 64-разрядное значение, представляющее количество 100-наносекундных интервалов с 1 января 1601 г. (UTC).

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

Уникально идентифицирует объект DkmModuleInstance.

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

[Необязательно] Сведения о версии файла.

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

Методы

ClearTransitionModuleFlag()

Экземпляры среды выполнения вызывают этот метод, чтобы пометить модуль как граничный модуль. При пошаговом выполнении среды выполнения должны проверка, если шаг достиг пограничного модуля, и при необходимости начать пошаговое разбирательство. Обратите внимание, что некоторые среды выполнения могут не выполнить этот запрос. Диспетчер будет хранить количество вызовов FlagAsTransitionModule. Модуль больше не будет считаться переходным модулем, только если количество вызовов ClearTransitionModuleFlag соответствует количеству вызовов.

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

(Унаследовано от DkmModuleInstance)
Create(String, String, UInt64, DkmModuleVersion, DkmSymbolFileId, DkmModuleFlags, DkmModuleMemoryLayout, UInt32, String, DkmNativeRuntimeInstance, UInt64, UInt32, DkmClrHeaderStatus, Boolean, DkmModule, DkmModuleInstance+MinidumpInfo, DkmDataItem)

Create новый экземпляр объекта DkmNativeModuleInstance.

Этот метод отправляет событие ModuleInstanceLoad.

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

Decompile()

Декомпилирует код модуля в C# и создает новую переносимую PDB-платформу с внедренным источником. Все модули, которые совместно используют этот файл символов, начнут использовать эти обновленные символы.

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

Этот API появился в Visual Studio 16 с обновлением 5 (DkmApiVersion.VS16Update5).

(Унаследовано от DkmModuleInstance)
Decompile(DkmWorkList, DkmCompletionRoutine<DkmDecompileAsyncResult>)

Декомпилирует код модуля в C# и создает новую переносимую PDB-платформу с внедренным источником. Все модули, которые совместно используют этот файл символов, начнут использовать эти обновленные символы.

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

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

Этот API появился в Visual Studio 16 с обновлением 5 (DkmApiVersion.VS16Update5).

(Унаследовано от DkmModuleInstance)
Decompile(DkmWorkList, DkmCompletionRoutine<DkmDecompileAsyncResult173>)

Декомпилирует код модуля в C# и создает новую переносимую PDB-платформу с внедренным источником. Все модули, которые совместно используют этот файл символов, начнут использовать эти обновленные символы. Реализации должны возвращать S_OK при сбое и возвращать фактические данные HRESULT и любые дополнительные сведения об ошибке с помощью параметров HR и ErrorMessage.

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

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

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

(Унаследовано от DkmModuleInstance)
Decompile(String, Int32)

Декомпилирует код модуля в C# и создает новую переносимую PDB-платформу с внедренным источником. Все модули, которые совместно используют этот файл символов, начнут использовать эти обновленные символы. Реализации должны возвращать S_OK при сбое и возвращать фактические данные HRESULT и любые дополнительные сведения об ошибке с помощью параметров HR и ErrorMessage.

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

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

(Унаследовано от DkmModuleInstance)
FindExportByOrdinal(DkmWorkList, UInt32, Boolean, DkmCompletionRoutine<DkmFindExportByOrdinalAsyncResult>)

Находит адрес экспортируемой функции (или экспорта данных), заданный порядком.

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

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

FindExportByOrdinal(UInt32, Boolean)

Находит адрес экспортируемой функции (или экспорта данных), заданный порядком.

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

FindExportName(DkmWorkList, String, Boolean, DkmCompletionRoutine<DkmFindExportNameAsyncResult>)

Находит адрес указанной именованной экспортируемой функции (или экспорта данных).

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

FindExportName(String, Boolean)

Находит адрес указанной именованной экспортируемой функции (или экспорта данных).

FlagAsTransitionModule()

Экземпляры среды выполнения вызывают этот метод, чтобы пометить модуль как граничный модуль. При пошаговом выполнении среды выполнения должны проверка, если шаг достиг пограничного модуля, и при необходимости начать пошаговое разбирательство. Обратите внимание, что некоторые среды выполнения могут не выполнить этот запрос. Диспетчер будет вести подсчет количества вызовов. Модуль больше не будет считаться переходным модулем, только если было выполнено соответствующее количество вызовов ClearTransitionModuleFlag.

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

(Унаследовано от DkmModuleInstance)
GetDataItem<T>()

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

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

Возвращает идентификатор сборки для модуля ELF.

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

Этот API появился в Visual Studio 16 с обновлением 8 (DkmApiVersion.VS16Update8).

GetFunctionTableEntry(UInt64)

Получите запись таблицы функций для переданного адреса. Формат подсистемы зависит от архитектуры отладчика.

GetGPUDisassembly(UInt64, UInt32, Boolean, Boolean)

Получите дизассемблию диапазона адресов в экземпляре модуля отладки.

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

Возвращает размер дизассемблируемого объекта в экземпляре модуля отладки.

(Унаследовано от DkmModuleInstance)
GetNextGPUInstructionAddress(UInt64)

Возвращает адрес следующей инструкции относительно начального адреса.

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

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

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

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

Извлекает все результаты поиска символов, связанные с данным экземпляром модуля.

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

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

(Унаследовано от DkmModuleInstance)
GetSymbolSearchResult(DkmWorkList, DkmCompletionRoutine<DkmGetSymbolSearchResultAsyncResult>)

Извлекает все результаты поиска символов, связанные с данным экземпляром модуля.

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

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

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

(Унаследовано от DkmModuleInstance)
GetSymbolStatusMessage(Boolean)

Получите локализованное строковое описание текущего состояния символа.

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

(Унаследовано от DkmModuleInstance)
GetSymbolStatusMessage(DkmWorkList, Boolean, DkmCompletionRoutine<DkmGetSymbolStatusMessageAsyncResult>)

Получите локализованное строковое описание текущего состояния символа.

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

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

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

Этот метод позволяет компоненту определить, подавлялось ли событие загрузки модуля.

Этот API появился в Visual Studio 12 с обновлением 3 (DkmApiVersion.VS12Update3).

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

Возвращает значение true, если какой-либо экземпляр среды выполнения помечает этот модуль как модуль перехода.

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

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

Определяет, считается ли модуль пользовательским кодом.

Ограничение расположения. Этот метод можно вызвать из компонента интегрированной среды разработки. Начиная с Visual Studio 2013 с обновлением 2 его также можно вызвать из компонента мониторинга для управляемого кода. В Visual Studio 2017 с обновлением 8 callDirection API был сделан "двунаправленным" из "Normal" и теперь может вызываться из любого компонента. AsyncCaller было задано значение true, а для CallerLocationConstraint — значение None из NoMarshalling.

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

(Унаследовано от DkmModuleInstance)
IsUserCode(DkmWorkList, DkmCompletionRoutine<DkmModuleInstanceIsUserCodeAsyncResult>)

Определяет, считается ли модуль пользовательским кодом.

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

Ограничение расположения. Этот метод можно вызвать из компонента интегрированной среды разработки. Начиная с Visual Studio 2013 с обновлением 2 его также можно вызвать из компонента мониторинга для управляемого кода. В Visual Studio 2017 с обновлением 8 callDirection API был сделан "двунаправленным" из "Normal" и теперь может вызываться из любого компонента. AsyncCaller было задано значение true, а для CallerLocationConstraint — значение None из NoMarshalling.

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

(Унаследовано от DkmModuleInstance)
OnBinaryLoaded(String)

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

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

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

Создайте событие BinaryReloadOpportunity. Компоненты, реализующие интерфейс приемника событий, получат уведомление о событии. Элемент управления возвращается после уведомления всех компонентов.

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

Этот API появился в Visual Studio 12 с обновлением 2 (DkmApiVersion.VS12Update2).

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

Этот метод вызывается при изменении модуля из-за EnC или динамически выдаваемого кода.

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

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

(Унаследовано от DkmModuleInstance)
OnSymbolsLoaded(DkmModule, Boolean)

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

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

(Унаследовано от DkmModuleInstance)
OnSymbolsUpdated(DkmModule)

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

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

Этот метод вызывается обработчиками символов для чтения символов для экземпляров DkmModuleInstance, символы которых находятся в памяти отладчика.

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

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

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

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

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

Обновления состояние отключенного модуля. Этот метод может вызываться только из события ModuleInstanceLoad. При отключении модуля обычно также подавляется событие загрузки модуля.

(Унаследовано от DkmModuleInstance)
SetModule(DkmModule, Boolean)

Этот метод вызывается поставщиком символов для связывания DkmModule с DkmModuleInstance и для активации события ModuleSymbolsLoaded. Он может вызываться только один раз для объекта DkmModuleInstance. Вызов этого API создаст связь DkmModule-DkmModuleInstance<>, а также вызовет событие ModuleSymbolsLoaded.

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

Попытайтесь загрузить двоичный файл, который ранее не удалось загрузить, используя обновленные пути к символам.

(Унаследовано от DkmModuleInstance)
TryLoadBinary(DkmWorkList, DkmCompletionRoutine<DkmTryLoadBinaryAsyncResult>)

Попытайтесь загрузить двоичный файл, который ранее не удалось загрузить, используя обновленные пути к символам.

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

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

Вызывается для запуска загрузки символов для экземпляров DkmModuleInstance, символы которых не были найдены при загрузке модуля.

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

(Унаследовано от DkmModuleInstance)
TryLoadSymbols(DkmSymbolLoadFlags)

Вызывается для запуска загрузки символов для экземпляров DkmModuleInstance, символы которых не были найдены при загрузке модуля.

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

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

(Унаследовано от DkmModuleInstance)
TryLoadSymbols(DkmWorkList, DkmCompletionRoutine<DkmTryLoadSymbolsAsyncResult>)

Вызывается для запуска загрузки символов для экземпляров DkmModuleInstance, символы которых не были найдены при загрузке модуля.

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

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

(Унаследовано от DkmModuleInstance)
TryLoadSymbols(DkmWorkList, DkmSymbolLoadFlags, DkmCompletionRoutine<DkmTryLoadSymbolsAsyncResult>)

Вызывается для запуска загрузки символов для экземпляров DkmModuleInstance, символы которых не были найдены при загрузке модуля.

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

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

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

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

Вызывается для запуска загрузки символов для экземпляров DkmModuleInstance, символы которых не были найдены при загрузке модуля.

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

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

(Унаследовано от DkmModuleInstance)
TryLoadSymbolsCallback(DkmWorkList, DkmCompletionRoutine<DkmTryLoadSymbolsCallbackAsyncResult>)

Вызывается для запуска загрузки символов для экземпляров DkmModuleInstance, символы которых не были найдены при загрузке модуля.

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

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

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

(Унаследовано от DkmModuleInstance)
TryLoadSymbolsCallback177(DkmSymbolLoadFlags)

Вызывается для запуска загрузки локально представленных символов для объектов DkmModuleInstances, символы которых не были найдены при загрузке модуля.

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

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

(Унаследовано от DkmModuleInstance)
TryLoadSymbolsCallback177(DkmWorkList, DkmSymbolLoadFlags, DkmCompletionRoutine<DkmTryLoadSymbolsCallback177AsyncResult>)

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

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

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

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

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

Пометьте объект Unload как выгруженный и уведомите компоненты, реализующие интерфейс приемника событий. Элемент управления возвращается после уведомления всех компонентов.

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

(Унаследовано от DkmModuleInstance)
UpdateFunctionTableEntries(DkmProcessorArchitecture, UInt32, Byte[])

Вызывается подсистемой EnC для обновления таблицы функций для модуля.

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

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