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

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

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

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

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

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

[out, optional] Entries

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

[in] EntriesCount

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

[out, optional] EntriesAvail

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

戻り値

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

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

注釈

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

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

要件

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

こちらもご覧ください

DEBUG_SYMBOL_SOURCE_ENTRY

GetSourceFileLineOffsets

IDebugSymbols3