Freigeben über


FindExecutableImageEx-Funktion (dbghelp.h)

Sucht die angegebene ausführbare Datei.

Syntax

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

Parameter

[in] FileName

Der Name der zu findenden Symboldatei. Dieser Parameter kann ein Teilpfad sein.

[in] SymbolPath

Der Pfad, in dem sich Symboldateien befinden. Diese Zeichenfolge kann mehrere Pfade enthalten, die durch Semikolons getrennt sind. Verwenden Sie zum Abrufen des Symbolpfads die SymGetSearchPath-Funktion .

[out] ImageFilePath

Ein Zeiger auf einen Puffer, der den vollständigen Pfad der ausführbaren Datei empfängt.

[in, optional] Callback

Eine anwendungsdefinierte Rückruffunktion, die überprüft, ob die richtige ausführbare Datei gefunden wurde oder ob die Funktion ihre Suche fortsetzen soll. Weitere Informationen finden Sie unter FindExecutableImageProc.

Dieser Parameter kann NULL sein.

[in, optional] CallerData

Optionale benutzerdefinierte Daten für die Rückruffunktion. Dieser Parameter kann NULL sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein geöffnetes Handle für die ausführbare Datei.

Wenn bei der Funktion ein Fehler auftritt, ist der Rückgabewert NULL. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen abzurufen.

Hinweise

Die FindExecutableImageEx-Funktion wird bereitgestellt, sodass ausführbare Dateien mithilfe eines einzelnen Funktionsaufrufs in verschiedenen Verzeichnissen gefunden werden können. Wenn der SymbolPath-Parameter mehrere Pfade enthält, durchsucht die Funktion jede angegebene Verzeichnisstruktur nach der ausführbaren Datei. Wenn die Datei gefunden wird, wird die Suche beendet. Achten Sie daher darauf, SymbolPath mit den Pfaden in der richtigen Reihenfolge anzugeben.

Alle DbgHelp-Funktionen, z. B. diese, sind singlethreaded. Daher führen an diese Funktion gerichtete Aufrufe mehrerer Threads wahrscheinlich zu unerwartetem Verhalten oder einer Beschädigung des Speichers. Um dies zu vermeiden, müssen Sie alle an diese Funktion gerichteten gleichzeitigen Aufrufe mehrerer Threads synchronisieren.

Um die Unicode-Version dieser Funktion aufzurufen, definieren Sie DBGHELP_TRANSLATE_TCHAR.

Anforderungen

   
Zielplattform Windows
Kopfzeile dbghelp.h
Bibliothek Dbghelp.lib
DLL Dbghelp.dll
Verteilbare Komponente DbgHelp.dll 5.1 oder höher

Weitere Informationen

DbgHelp-Funktionen

FindExecutableImageProc

SymGetSearchPath