次の方法で共有


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
);

パラメーター

[in] FileName

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

[in] SymbolPath

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

[out] ImageFilePath

実行可能ファイルの完全パスを受け取るバッファーへのポインター。

[in, optional] Callback

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

このパラメーターは、NULL でもかまいません。

[in, optional] CallerData

コールバック関数の省略可能なユーザー定義データ。 このパラメーターは、NULL でもかまいません。

戻り値

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

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

解説

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

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

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

要件

   
対象プラットフォーム Windows
ヘッダー dbghelp.h
Library Dbghelp.lib
[DLL] Dbghelp.dll
再頒布可能パッケージ DbgHelp.dll 5.1 以降

関連項目

DbgHelp 関数

FindExecutableImageProc

SymGetSearchPath