指定された名前に対するシンボルを特定する。(SymGetSymFromName64)
SymGetSymFromName64 hProcess, Name, Symbol
hProcess : [intptr] もともと SymInitialize 関数に渡したプロセスのハンドル。 Name : [str] シンボルを特定するためのシンボル名。 Symbol : [var] IMAGEHLP_SYMBOL64 構造体へのポインタ。
(プラグイン / モジュール : dbghelp.dll)
指定された名前に対するシンボルを特定する。(SymGetSymFromName64) [戻り値] 関数が成功した場合、戻り値は TRUE である。関数が失敗した場合、戻り値は FALSE である。拡張エラー情報を取得するには、GetLastError を呼び出す。 [備考] SymGetSymFromName64 関数は、指定された名前に対するシンボルを特定するために使用される。名前には「module!」という形式のモジュール接頭辞を含めて、シンボル検索を単一モジュールのシンボルテーブルに限定することができる。「!」文字はモジュール名とシンボル名の区切り文字である。モジュール接頭辞がない場合、最初に読み込まれたモジュールから順に、各モジュールのシンボルテーブルに対して線形に検索が行われる。モジュール接頭辞を使用すると、二つの点で望ましい。まず、シンボル検索がはるかに高速になる。次に、遅延シンボル読み込みが有効な場合、検索対象の各モジュールのシンボルが読み込まれてしまうことを避けられる。シンボルが見つかると、呼び出し側が用意した Symbol バッファにシンボル情報がコピーされる。SymGetSymFromName64 を呼び出す前に、呼び出し側で Symbol バッファを適切に確保し、IMAGEHLP_SYMBOL64 構造体の必須パラメータを設定しておく必要がある。この関数を含め、すべての DbgHelp 関数はシングルスレッドである。そのため複数のスレッドから同時に呼び出すと、予期しない動作やメモリ破壊を招く可能性が高い。これを避けるには、複数スレッドからの並行呼び出しをすべて同期する必要がある。この関数は SymGetSymFromName 関数の後継である。詳細は Updated Platform Support を参照のこと。SymGetSymFromName は Dbghelp.h で次のように定義されている。 (以下省略)
| プラグイン / モジュール | dbghelp.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の dbghelp.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_dbghelp_gen2.hs |