SymSrvDeltaName-Funktion (dbghelp.h)
Generiert den Namen für eine Datei, die die Beziehung zwischen zwei verschiedenen Versionen desselben Symbols oder derselben Imagedatei beschreibt. Die Verwendung dieses Features verhindert, dass Anwendungen solche Informationen bei jeder Analyse von zwei Dateien erneut generieren müssen.
Syntax
PCSTR IMAGEAPI SymSrvDeltaName(
[in] HANDLE hProcess,
[in, optional] PCSTR SymPath,
[in] PCSTR Type,
[in] PCSTR File1,
[in] PCSTR File2
);
Parameter
[in] hProcess
Ein Handle für einen Prozess. Dieses Handle muss zuvor an die SymInitialize-Funktion übergeben worden sein.
[in, optional] SymPath
Der Symbolpfad. Die Funktion verwendet nur die Symbolspeicher, die in der Standardsyntax für Symbolspeicher beschrieben werden. Alle anderen Pfade werden ignoriert. Wenn dieser Parameter NULL ist, verwendet die Funktion den Symbolpfad, der mithilfe der SymInitialize - oder SymSetSearchPath-Funktion festgelegt wurde.
[in] Type
Die Erweiterung für den generierten Dateinamen.
[in] File1
Der Pfad der ersten Version der Symbol- oder Imagedatei.
[in] File2
Der Pfad der zweiten Version des Symbols oder der Imagedatei.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert der resultierende Dateiname.
Wenn bei der Funktion ein Fehler auftritt, ist der Rückgabewert NULL. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen abzurufen.
Hinweise
Diese Funktion öffnet die beiden angegebenen Dateien, liest die Indizierungsinformationen aus dem Header und übergibt diese Informationen an den Symbolserver, damit er den Dateinamen erstellen kann. Wenn Sie den Type-Parameter als "xml" angeben, ist der Name der Index von File1, gefolgt von einem Bindestrich, gefolgt vom Index von File2, gefolgt von einer .xml-Erweiterung. Beispiel:
3F3D5C755000-3F3D647621000.xml
Diese Funktion gibt einen Zeiger auf einen Puffer zurück, der von einer anderen Funktion wiederverwendet werden kann. Achten Sie daher darauf, die zurückgegebenen Daten sofort in einen anderen Puffer zu kopieren.
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 6.3 oder höher |