SymGetLineFromName 関数 (dbghelp.h)
指定したモジュール、ファイル名、および行番号のソース行を検索します。
構文
BOOL IMAGEAPI SymGetLineFromName(
[in] HANDLE hProcess,
[in, optional] PCSTR ModuleName,
[in, optional] PCSTR FileName,
[in] DWORD dwLineNumber,
[out] PLONG plDisplacement,
[in, out] PIMAGEHLP_LINE Line
);
パラメーター
[in] hProcess
SymInitialize 関数に最初に渡されたプロセスへのハンドル。
[in, optional] ModuleName
行が配置されるモジュールの名前。
[in, optional] FileName
行が配置されるファイルの名前。 アプリケーションにこの名前のソース ファイルが複数ある場合は、必ず完全パスを指定してください。
[in] dwLineNumber
配置する行番号。
[out] plDisplacement
行の先頭からのバイト単位の変位(0)。
[in, out] Line
IMAGEHLP_LINE64構造体へのポインター。
戻り値
関数が成功した場合、戻り値は TRUE になります。
関数が失敗した場合、戻り値は FALSE になります。 拡張エラー情報を取得するには、 GetLastError を呼び出します。
解説
呼び出し元は、SymGetLineFromName64 を呼び出す前に、Line バッファーを適切に割り当て、IMAGEHLP_LINE64構造体の必須メンバーを入力する必要があります。
この関数を呼び出す前に、最初に SymInitialize、 SymSetOptions、 SymLoadModule64 を呼び出して、シンボルが正しく初期化されていることを確認します。
この関数は、別の関数によって再利用される可能性があるバッファーへのポインターを返します。 そのため、返されたデータをすぐに別のバッファーにコピーしてください。
この関数など、すべての DbgHelp 関数はシングル スレッドです。 そのため、複数のスレッドからこの関数を呼び出すと、予期しない動作やメモリ破損が発生する可能性があります。 これを回避するには、複数のスレッドからのすべての同時呼び出しをこの関数に同期する必要があります。
この関数の Unicode バージョンを呼び出すには、DBGHELP_TRANSLATE_TCHARを定義します。 SymGetLineFromNameW64 は、Dbghelp.h で次のように定義されています。
BOOL
IMAGEAPI
SymGetLineFromNameW64(
__in HANDLE hProcess,
__in_opt PCWSTR ModuleName,
__in_opt PCWSTR FileName,
__in DWORD dwLineNumber,
__out PLONG plDisplacement,
__inout PIMAGEHLP_LINEW64 Line
);
#ifdef DBGHELP_TRANSLATE_TCHAR
#define SymGetLineFromName64 SymGetLineFromNameW64
#endif
この関数は SymGetLineFromName 関数よりも優先されます。 詳細については、「 プラットフォーム サポートの更新」を参照してください。 SymGetLineFromName は、Dbghelp.h で次のように定義されています。
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymGetLineFromName SymGetLineFromName64
#else
BOOL
IMAGEAPI
SymGetLineFromName(
__in HANDLE hProcess,
__in_opt PCSTR ModuleName,
__in_opt PCSTR FileName,
__in DWORD dwLineNumber,
__out PLONG plDisplacement,
__inout PIMAGEHLP_LINE Line
);
#endif
例
例については、「名前によるシンボル情報の取得」をご覧ください。
要件
対象プラットフォーム | Windows |
ヘッダー | dbghelp.h |
Library | Dbghelp.lib |
[DLL] | Dbghelp.dll |
再頒布可能パッケージ | DbgHelp.dll 5.1 以降 |