次の方法で共有


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

パターンを検索する距離を指定します。 一致が成功するには 、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)
Length バイトを調べた後、パターンが見つかりませんでした。

注釈

このメソッドは、ターゲットの仮想メモリを検索し、ターゲットのメモリの Length バイトに完全に含まれるパターンの粒度に従って、 Offset 位置から始まる最初の出現を検索します。

PatternGranularity を使用すると、 Offset を基準にした一致の配置を確保できます。 たとえば、0x4の値を使用して、DWORD へのアラインメントを要求できます。 0x1の値を使用すると、パターンを任意の場所から開始できます。

要件

要件
対象プラットフォーム デスクトップ
Header dbgeng.h (Dbgeng.h を含む)

こちらもご覧ください

IDebugDataSpaces4

SearchVirtual