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


Метод IDebugDataSpaces::SearchVirtual (dbgeng.h)

Метод SearchVirtual выполняет поиск указанного шаблона байтов в виртуальной памяти целевого объекта.

Синтаксис

HRESULT SearchVirtual(
  [in]  ULONG64  Offset,
  [in]  ULONG64  Length,
  [in]  PVOID    Pattern,
  [in]  ULONG    PatternSize,
  [in]  ULONG    PatternGranularity,
  [out] PULONG64 MatchOffset
);

Параметры

[in] Offset

Указывает расположение в виртуальном адресном пространстве целевого объекта для начала поиска шаблона.

[in] Length

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

[in] Pattern

Указывает искомый шаблон.

[in] PatternSize

Задает размер шаблона в байтах. Это должно быть кратно степени детализации шаблона.

[in] PatternGranularity

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

[out] MatchOffset

Получает расположение в виртуальном адресном пространстве целевого объекта шаблона, если он был найден.

Возвращаемое значение

Этот метод также может возвращать значения ошибок. Дополнительные сведения см. в разделе Возвращаемые значения .

Код возврата Описание
S_OK
Метод выполнен успешно.
HRESULT_FROM_NT(STATUS_NO_MORE_ENTRIES)
После изучения длины байтов шаблон не найден.

Комментарии

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

PatternGranularity можно использовать для обеспечения выравнивания соответствия относительно Смещения. Например, значение 0x4 можно использовать для требования выравнивания по DWORD. Значение 0x1 можно использовать, чтобы шаблон начинался в любом месте.

Дополнительные параметры, включая возможность ограничить поиск объемом записываемой памяти, см. в разделе SearchVirtual2.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть dbgeng.h (включая Dbgeng.h)

См. также раздел

IDebugDataSpaces

IDebugDataSpaces2

IDebugDataSpaces3

IDebugDataSpaces4

ReadVirtual

SearchVirtual2