SymSrvDeltaName 関数 (dbghelp.h)
同じシンボルまたはイメージ ファイルの 2 つの異なるバージョン間のリレーションシップを記述するファイルの名前を生成します。 この機能を使用すると、アプリケーションが 2 つのファイルを分析するたびにこのような情報を再生成する必要がなくなります。
構文
PCSTR IMAGEAPI SymSrvDeltaName(
[in] HANDLE hProcess,
[in, optional] PCSTR SymPath,
[in] PCSTR Type,
[in] PCSTR File1,
[in] PCSTR File2
);
パラメーター
[in] hProcess
プロセスへのハンドル。 このハンドルは、 SymInitialize 関数に以前に渡されている必要があります。
[in, optional] SymPath
シンボル パス。 関数は、シンボル ストアの標準構文で説明されているシンボル ストアのみを使用します。 その他のパスはすべて無視されます。 このパラメーターが NULL の場合、関数は SymInitialize 関数または SymSetSearchPath 関数を使用して設定されたシンボル パスを使用します。
[in] Type
生成されたファイル名の拡張子。
[in] File1
シンボルまたはイメージ ファイルの最初のバージョンのパス。
[in] File2
シンボルまたはイメージ ファイルの 2 番目のバージョンのパス。
戻り値
関数が成功した場合、戻り値は結果のファイル名になります。
関数が失敗した場合は、返される値は NULL です。 拡張エラー情報を取得するには、 GetLastError を呼び出します。
解説
この関数は、指定された 2 つのファイルを開き、ヘッダーからインデックス情報を読み取り、この情報をシンボル サーバーに渡して、ファイル名を作成できるようにします。 Type パラメーターを "xml" として指定した場合、名前は File1 のインデックス、ダッシュ、File2 のインデックス、.xml 拡張子が続きます。 たとえば次のような点です。
3F3D5C755000-3F3D647621000.xml
この関数は、別の関数によって再利用される可能性があるバッファーへのポインターを返します。 そのため、返されたデータをすぐに別のバッファーにコピーしてください。
この関数など、すべての DbgHelp 関数はシングル スレッドです。 そのため、複数のスレッドからこの関数を呼び出すと、予期しない動作やメモリ破損が発生する可能性があります。 これを回避するには、複数のスレッドからのすべての同時呼び出しをこの関数に同期する必要があります。
この関数の Unicode バージョンを呼び出すには、DBGHELP_TRANSLATE_TCHARを定義します。
要件
対象プラットフォーム | Windows |
ヘッダー | dbghelp.h |
Library | Dbghelp.lib |
[DLL] | Dbghelp.dll |
再頒布可能パッケージ | DbgHelp.dll 6.3 以降 |