次の方法で共有


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 以降

関連項目

DbgHelp 関数