SymGetLineNext 関数 (dbghelp.h)
次のソース行の行情報を取得します。
構文
BOOL IMAGEAPI SymGetLineNext(
[in] HANDLE hProcess,
[in, out] PIMAGEHLP_LINE Line
);
パラメーター
[in] hProcess
SymInitialize 関数に最初に渡されたプロセスのハンドル。
[in, out] Line
行情報を含む IMAGEHLP_LINE64 構造体へのポインター。
戻り値
関数が成功した場合、戻り値は TRUE になります。
関数が失敗した場合、戻り値は FALSE になります。 拡張エラー情報を取得するには、 GetLastError を呼び出します。
解説
SymGetLineNext64 関数では、IMAGEHLP_LINE64構造体に有効なデータが含まれている必要があります。これは、SymGetLineFromAddr64 関数または SymGetLineFromName64 関数の呼び出しから取得される可能性があります。 この構造体は、次の行の行情報を順番に受け取ります。
この関数は、別の関数で再利用できるバッファーへのポインターを返します。 そのため、返されたデータをすぐに別のバッファーにコピーしてください。
この関数など、すべての DbgHelp 関数はシングル スレッドです。 そのため、複数のスレッドからこの関数を呼び出すと、予期しない動作やメモリ破損が発生する可能性があります。 これを回避するには、複数のスレッドからのすべての同時呼び出しをこの関数に同期する必要があります。
この関数の Unicode バージョンを呼び出すには、DBGHELP_TRANSLATE_TCHARを定義します。 SymGetLineNextW64 は、Dbghelp.h で次のように定義されています。
BOOL
IMAGEAPI
SymGetLineNextW64(
__in HANDLE hProcess,
__inout PIMAGEHLP_LINEW64 Line
#ifdef DBGHELP_TRANSLATE_TCHAR
#define SymGetLineNext64 SymGetLineNextW64
#endif
この関数は SymGetLineNext 関数よりも優先されます。 詳細については、「 プラットフォーム サポートの更新」を参照してください。 SymGetLineNext は、Dbghelp.h で次のように定義されています。
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymGetLineNext SymGetLineNext64
#else
BOOL
IMAGEAPI
SymGetLineNext(
__in HANDLE hProcess,
__inout PIMAGEHLP_LINE Line
);
BOOL
IMAGEAPI
SymGetLineNextW(
__in HANDLE hProcess,
__inout PIMAGEHLP_LINEW Line
);
#endif
要件
対象プラットフォーム | Windows |
ヘッダー | dbghelp.h |
Library | Dbghelp.lib |
[DLL] | Dbghelp.dll |
再頒布可能パッケージ | DbgHelp.dll 5.1 以降 |