Freigeben über


SymGetLineFromInlineContextW-Funktion (dbghelp.h)

Sucht die Quellzeile für den angegebenen Inlinekontext.

Syntax

BOOL IMAGEAPI SymGetLineFromInlineContextW(
  [in]           HANDLE            hProcess,
  [in]           DWORD64           dwAddr,
  [in]           ULONG             InlineContext,
  [in, optional] DWORD64           qwModuleBaseAddress,
  [out]          PDWORD            pdwDisplacement,
  [out]          PIMAGEHLP_LINEW64 Line
);

Parameter

[in] hProcess

Ein Handle an den Prozess, der ursprünglich an die SymInitialize-Funktion übergeben wurde.

[in] dwAddr

Die Adresse, für die sich eine Zeile befinden soll. Es ist nicht erforderlich, dass sich die Adresse auf einer Liniengrenze befindet. Wenn die Adresse nach dem Anfang einer Zeile und vor dem Ende der Zeile angezeigt wird, wird die Zeile gefunden.

[in] InlineContext

Der Inlinekontext.

[in, optional] qwModuleBaseAddress

Die Basisadresse des Moduls.

[out] pdwDisplacement

Die Verschiebung in Bytes vom Anfang der Zeile oder Null.

[out] Line

Ein Zeiger auf eine IMAGEHLP_LINE64 Struktur.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE.

Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen abzurufen.

Bemerkungen

Der Aufrufer muss den Line Puffer ordnungsgemäß zuweisen und die erforderlichen Member der IMAGEHLP_LINE64 Struktur ausfüllen, bevor SymGetLineFromInlineContextaufgerufen wird.

Diese Funktion gibt einen Zeiger auf einen Puffer zurück, der von einer anderen Funktion wiederverwendet werden kann. Achten Sie daher darauf, die daten, die sofort in einen anderen Puffer zurückgegeben wurden, zu kopieren.

Alle DbgHelp-Funktionen, z. B. diese, sind single threaded. Daher führen Aufrufe von mehr als einem Thread zu dieser Funktion wahrscheinlich zu unerwartetem Verhalten oder Speicherbeschädigung. Um dies zu vermeiden, müssen Sie alle gleichzeitigen Aufrufe von mehr als einem Thread mit dieser Funktion synchronisieren.

Um die Unicode-Version dieser Funktion aufzurufen, definieren Sie DBGHELP_TRANSLATE_TCHAR. SymGetLineFromInlineContext- wird wie folgt in Dbghelp.h definiert.

BOOL
IMAGEAPI
SymGetLineFromInlineContextW(
    _In_ HANDLE hProcess,
    _In_ DWORD64 dwAddr,
    _In_ ULONG InlineContext,
    _In_opt_ DWORD64 qwModuleBaseAddress,
    _Out_ PDWORD pdwDisplacement,
    _Out_ PIMAGEHLP_LINEW64 Line
    );

#ifdef DBGHELP_TRANSLATE_TCHAR
 #define SymGetLineFromInlineContext SymGetLineFromInlineContextW
#endif

Anmerkung

Der dbghelp.h-Header definiert SymGetLineFromInlineContext als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Zielplattform- Fenster
Header- dbghelp.h
Library DbgHelp.lib
DLL- DbgHelp.dll
redistributable DbgHelp.dll 6.2 oder höher