次の方法で共有


IDebugSymbols3::GetSourceEntriesByLineWide メソッド (dbgeng.h)

GetSourceEntriesByLineWide メソッドはシンボル情報を照会し、ソース ファイル内の行に対応するターゲットのメモリ内の場所を返します。

構文

HRESULT GetSourceEntriesByLineWide(
  [in]            ULONG                      Line,
  [in]            PCWSTR                     File,
  [in]            ULONG                      Flags,
  [out, optional] PDEBUG_SYMBOL_SOURCE_ENTRY Entries,
  [in]            ULONG                      EntriesCount,
  [out, optional] PULONG                     EntriesAvail
);

パラメーター

[in] Line

クエリ対象のソース ファイル内の行を指定します。 最初の行の番号は 1 です。

[in] File

ソース ファイルを指定します。 ターゲット内の各モジュールのシンボルは、このファイルに対して照会されます。

[in] Flags

このメソッドの動作を制御するビット フラグを指定します。 Flags は、次の表の値を任意に組み合わせて使用できます。

価値 形容
DEBUG_GSEL_NO_SYMBOL_LOADS デバッガー エンジン は、シンボルが既に読み込まれているモジュール間でのみファイルを検索します。 他のモジュールのシンボルは読み込まれません。

このオプションが設定されていない場合、デバッガー エンジンは、ファイルで指定されたファイルが見つかるまで、すべてのモジュールのシンボルを読み込みます。

DEBUG_GSEL_ALLOW_LOWER 結果に行 する前に、すべての行を File に含めます。
DEBUG_GSEL_ALLOW_HIGHER 結果の行 の後 ファイル のすべての行 含めます。
DEBUG_GSEL_NEAREST_ONLY 返される結果は最大 1 つだけです。 DEBUG_GSEL_ALLOW_LOWERまたはDEBUG_GSEL_ALLOW_HIGHERが設定されている場合、返される結果は Line に近い行になりますが、その行のシンボル情報がない場合は、行 することはできません。
 

既定のフラグ セットを使用するには、Flags を DEBUG_GSEL_DEFAULT に設定します。 これにより、前の表のすべてのフラグがオフになります。

[out, optional] Entries

クエリ対象のソース行に対応するターゲットのメモリ内の場所を受け取ります。 この配列内の各エントリは DEBUG_SYMBOL_SOURCE_ENTRY 型であり、ソース行番号とターゲットのメモリ内の場所が含まれます。

[in] EntriesCount

Entries 配列内のエントリの数を指定します。

[out, optional] EntriesAvail

ターゲットのメモリ内で見つかったクエリと一致する場所の数を受け取ります。

戻り値

これらのメソッドは、エラー値を返すこともできます。 詳細については 戻り値の を参照してください。

リターン コード 形容
S_OK
メソッドが成功しました。
S_FALSE
メソッドが成功しました。 ただし、配列 エントリは、クエリに一致するすべての結果を保持するのに十分な大きさではなく、余分な結果は破棄されました。
E_NOINTERFACE
クエリで結果が生成されていません。 これには、指定したファイルでシンボル情報が使用できなかった場合が含まれます。

備考

これらのメソッドは、ブレークポイントを設定したり、ソース コードと逆アセンブルされた命令を照合したりするために、デバッガー アプリケーションでターゲットのメモリ内の場所をフェッチするために使用できます。 たとえば、フラグのDEBUG_GSEL_ALLOW_HIGHERとDEBUG_GSEL_NEAREST_ONLYを設定すると、指定した行から始まる最初のコードのターゲットのメモリ位置が返されます。

ソース ファイルの詳細については、「ソース ファイル の使用」を参照してください。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー dbgeng.h (Dbgeng.h を含む)

関連項目

DEBUG_SYMBOL_SOURCE_ENTRY

GetSourceFileLineOffsets

IDebugSymbols3