IDebugDataSpaces4::SearchVirtual2 方法 (dbgeng.h)

SearchVirtual2 方法在进程的虚拟内存中搜索指定的字节模式。

语法

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

参数

[in] Offset

指定进程虚拟地址空间中开始搜索模式的位置。

[in] Length

指定搜索模式的距离。 成功的匹配要求在检查 长度 字节之前找到整个模式。

[in] Flags

指定搜索标志的位字段。 目前,唯一可以设置的位标志是DEBUG_VSEARCH_WRITABLE_ONLY,这会将搜索限制为可写内存。

[in] Pattern

指定要搜索的模式。

[in] PatternSize

指定模式的大小(以字节为单位)。 这必须是模式粒度的倍数。

[in] PatternGranularity

指定模式的粒度。 若要成功匹配,找到的模式和 Offset 的位置之差必须是 PatternGranularity 的倍数。

[out] MatchOffset

如果找到模式的进程虚拟地址空间中的位置,则接收该位置。

返回值

此方法还可以返回错误值。 有关更多详细信息 ,请参阅返回值

返回代码 说明
S_OK
方法成功。
HRESULT_FROM_NT (STATUS_NO_MORE_ENTRIES)
检查 长度 字节后,找不到模式。

注解

此方法在目标虚拟内存中搜索完全包含在目标内存的 长度 字节中的模式的第一次出现(受粒度限制),从 偏移 位置开始。

PatternGranularity 可用于确保匹配相对于 Offset 的对齐方式。 例如,值 0x4 可用于要求对齐到 DWORD。 值 0x1 可用于允许模式从任意位置开始。

要求

要求
目标平台 桌面
标头 dbgeng.h (包括 Dbgeng.h)

另请参阅

IDebugDataSpaces4

SearchVirtual