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

指定模式的粒度。 对于成功的匹配,找到的模式和 偏移量 的位置之间的差异必须是 PatternGranularity的倍数。

[out] MatchOffset

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

返回值

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

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

言论

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

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

要求

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

另请参阅

IDebugDataSpaces4

SearchVirtual