FindExecutableImageEx 関数 (dbghelp.h)

指定した実行可能ファイルを検索します。

構文

HANDLE IMAGEAPI FindExecutableImageEx(
  [in]           PCSTR                   FileName,
  [in]           PCSTR                   SymbolPath,
  [out]          PSTR                    ImageFilePath,
  [in, optional] PFIND_EXE_FILE_CALLBACK Callback,
  [in, optional] PVOID                   CallerData
);

Parameters

[in] FileName

配置するシンボル ファイルの名前。 このパラメーターには、部分パスを指定できます。

[in] SymbolPath

シンボル ファイルが配置されているパス。 この文字列には、セミコロンで区切られた複数のパスを含めることができます。 シンボル パスを取得するには、 SymGetSearchPath 関数を使用します。

[out] ImageFilePath

実行可能ファイルの完全なパスを受け取るバッファーへのポインター。 このバッファーは、少なくとも MAX_PATH + 1 文字である必要があります。

[in, optional] Callback

正しい実行可能ファイルが見つかったかどうか、または関数が検索を続行する必要があるかどうかを確認するアプリケーション定義のコールバック関数。 詳細については、「 FindExecutableImageProc」を参照してください。

このパラメーターには NULL を指定できます。

[in, optional] CallerData

コールバック関数の省略可能なユーザー定義データ。 このパラメーターには NULL を指定できます。

戻り値

関数が成功した場合、戻り値は実行可能ファイルへの開いているハンドルです。

関数が失敗した場合、戻り値は NULL です。 拡張エラー情報を取得するには、GetLastError呼び出します。

注釈

FindExecutableImageEx 関数が用意されているため、1 つの関数呼び出しを使用して複数の異なるディレクトリに実行可能ファイルを見つけることができます。 SymbolPath パラメーターに複数のパスが含まれている場合、関数は指定された各ディレクトリ ツリーで実行可能ファイルを検索します。 ファイルが見つかると、検索は停止します。 したがって、パスを正しい順序で SymbolPath を指定してください。

この関数など、すべての DbgHelp 関数はシングル スレッドです。 そのため、複数のスレッドからこの関数を呼び出すと、予期しない動作やメモリ破損が発生する可能性があります。 これを回避するには、複数のスレッドからのすべての同時呼び出しをこの関数に同期する必要があります。

この関数の Unicode バージョンを呼び出すには、DBGHELP_TRANSLATE_TCHARを定義します。

Requirements

Requirement 価値
ターゲット プラットフォーム Windows
ヘッダー dbghelp.h
ライブラリ Dbghelp.lib
DLL Dbghelp.dll
再頒布可能 DbgHelp.dll 5.1 以降

こちらも参照ください

DbgHelp 関数

FindExecutableImageProc

SymGetSearchPath