SymGetLineFromInlineContext 関数 (dbghelp.h)
指定したインライン コンテキストのソース行を検索します。
構文
BOOL IMAGEAPI SymGetLineFromInlineContext(
[in] HANDLE hProcess,
[in] DWORD64 qwAddr,
[in] ULONG InlineContext,
[in, optional] DWORD64 qwModuleBaseAddress,
[out] PDWORD pdwDisplacement,
[out] PIMAGEHLP_LINE64 Line64
);
パラメーター
[in] hProcess
SymInitialize 関数に最初に渡されたプロセスのハンドル。
[in] qwAddr
行を配置する必要があるアドレス。 アドレスを行境界に置く必要はありません。 アドレスが行の先頭の後、行の末尾の前に表示される場合は、行が見つかります。
[in] InlineContext
インライン コンテキスト。
[in, optional] qwModuleBaseAddress
モジュールのベース アドレス。
[out] pdwDisplacement
行の先頭からの変位 (バイト単位)、または 0。
[out] Line64
IMAGEHLP_LINE64構造体へのポインター。
戻り値
関数が成功した場合、戻り値は TRUE になります。
関数が失敗した場合、戻り値は FALSE になります。 拡張エラー情報を取得するには、 GetLastError を呼び出します。
解説
呼び出し元は、SymGetLineFromInlineContext を呼び出す前に、Line バッファーを適切に割り当て、IMAGEHLP_LINE64 構造体の必要なメンバーを入力する必要があります。
この関数は、別の関数で再利用できるバッファーへのポインターを返します。 そのため、返されたデータをすぐに別のバッファーにコピーしてください。
この関数など、すべての DbgHelp 関数はシングル スレッドです。 そのため、複数のスレッドからこの関数を呼び出すと、予期しない動作やメモリ破損が発生する可能性があります。 これを回避するには、複数のスレッドからのすべての同時呼び出しをこの関数に同期する必要があります。
この関数の Unicode バージョンを呼び出すには、DBGHELP_TRANSLATE_TCHARを定義 します。 SymGetLineFromInlineContext は、Dbghelp.h で次のように定義されています。
BOOL
IMAGEAPI
SymGetLineFromInlineContextW(
_In_ HANDLE hProcess,
_In_ DWORD64 dwAddr,
_In_ ULONG InlineContext,
_In_opt_ DWORD64 qwModuleBaseAddress,
_Out_ PDWORD pdwDisplacement,
_Out_ PIMAGEHLP_LINEW64 Line
);
#ifdef DBGHELP_TRANSLATE_TCHAR
#define SymGetLineFromInlineContext SymGetLineFromInlineContextW
#endif
要件
対象プラットフォーム | Windows |
ヘッダー | dbghelp.h |
Library | DbgHelp.lib |
[DLL] | DbgHelp.dll |
再頒布可能パッケージ | DbgHelp.dll 6.2 以降 |