Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zawiera tekstową reprezentację zarządzanego śledzenia stosu i tablicę rekordów CONTEXT , po jednym dla każdego przejścia między niezarządzanym i zarządzanym kodem.
Składnia
HRESULT CALLBACK _EFN_StackTrace(
[in] PDEBUG_CLIENT Client,
[out] WCHAR wszTextOut[],
[out] size_t *puiTextLength,
[out] LPVOID pTransitionContexts,
[out] size_t *puiTransitionContextCount,
[in] size_t uiSizeOfContext,
[in] DWORD Flags
);
Parametry
Client [in] Debugowany klient.
wszTextOut [out] Tekstowa reprezentacja śledzenia stosu.
puiTextLength[out] Wskaźnik do liczby znaków w .wszTextOut
pTransitionContexts [out] Tablica kontekstów przejścia.
puiTransitionContextCount [out] Wskaźnik do liczby kontekstów przejścia w tablicy.
uiSizeOfContext [in] Rozmiar struktury kontekstu.
Flags [in] Ustaw wartość 0 lub SOS_STACKTRACE_SHOWADDRESSES (0x01), aby wyświetlić rejestr EBP i wskaźnik stosu wprowadź (ESP) przed każdym module!functionname wierszem.
Uwagi
Struktura _EFN_StackTrace może być wywoływana z interfejsu programowego WinDbg. Parametry są używane w następujący sposób:
Jeśli
wszTextOutma wartość null ipuiTextLengthnie ma wartości null, funkcja zwraca długość ciągu w elemeciepuiTextLength.Jeśli
wszTextOutwartość nie ma wartości null, funkcja przechowuje tekst wwszTextOutmaksymalnie lokalizacji wskazanej przezpuiTextLength. Zostanie zwrócony pomyślnie, jeśli w buforze jest wystarczająca ilość miejsca lub zwraca E_OUTOFMEMORY, jeśli bufor nie był wystarczająco długi.Część przejścia funkcji jest ignorowana, jeśli
pTransitionContextsobiepuiTransitionContextCountwartości mają wartość null. W tym przypadku funkcja udostępnia obiektom wywołującym dane wyjściowe tekstowe tylko nazw funkcji.Jeśli
pTransitionContextsparametr ma wartość null ipuiTransitionContextCountnie ma wartości null, funkcja zwraca wymaganą liczbę wpisów kontekstu w plikupuiTransitionContextCount.Jeśli
pTransitionContextsparametr nie ma wartości null, funkcja traktuje ją jako tablicę struktur o długościpuiTransitionContextCount. Rozmiar struktury jest podawany przezuiSizeOfContextelement i musi być rozmiarem SimpleContext lubCONTEXTarchitektury.wszTextOutjest zapisywany w następującym formacie:"<ModuleName>!<Function Name>[+<offset in hex>] ... (TRANSITION) ..."Jeśli przesunięcie w szesnastkowym jest 0x0, nie jest zapisywane żadne przesunięcie.
Jeśli w wątku aktualnie w kontekście nie ma zarządzanego kodu, funkcja zwraca SOS_E_NOMANAGEDCODE.
Parametr
Flagsma wartość 0 lub SOS_STACKTRACE_SHOWADDRESSES, aby zobaczyć EBP i ESP przed każdymmodule!functionnamewierszem. Domyślnie jest to 0.#define SOS_STACKTRACE_SHOWADDRESSES 0x00000001
Wymagania
Platformy: zobacz Wymagania systemowe.
Nagłówek: SOS_Stacktrace.h
Wersje programu .NET Framework: dostępne od wersji 2.0