Funzione SymRegisterFunctionEntryCallback (dbghelp.h)

Registra una funzione di callback per l'uso dalla procedura a piedi dello stack nei computer Alfa.

Sintassi

BOOL IMAGEAPI SymRegisterFunctionEntryCallback(
  [in] HANDLE                     hProcess,
  [in] PSYMBOL_FUNCENTRY_CALLBACK CallbackFunction,
  [in] PVOID                      UserContext
);

Parametri

[in] hProcess

Handle per il processo passato originariamente alla funzione StackWalk64 .

[in] CallbackFunction

Funzione di callback SymRegisterFunctionEntryCallbackProc64 .

[in] UserContext

Valore definito dall'utente o NULL. Questo valore viene semplicemente passato alla funzione di callback. In genere, questo parametro viene usato da un'applicazione per passare un puntatore a una struttura di dati che consente alla funzione di callback di stabilire un contesto.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è TRUE.

Se la funzione ha esito negativo, il valore restituito è FALSE. Per recuperare informazioni sull'errore estese, chiamare GetLastError.

Commenti

La funzione SymRegisterFunctionEntryCallback64 consente a un'applicazione di registrare una funzione di callback per l'uso dalla procedura a piedi dello stack. La procedura a piedi dello stack chiama la funzione di callback registrata quando non è in grado di individuare una voce della tabella di funzione per un indirizzo. Nella maggior parte dei casi, la procedura a piedi dello stack individua le voci della tabella delle funzioni nella tabella delle funzioni dell'immagine contenente l'indirizzo. Tuttavia, in situazioni in cui le voci della tabella delle funzioni non sono presenti nell'immagine, questo callback consente al debugger di fornire la voce della tabella delle funzioni da un'altra origine. Ad esempio, il codice generato in fase di esecuzione nei computer Alfa può definire tabelle di funzione dinamiche per supportare la gestione delle eccezioni e la traccia dello stack.

Tutte le funzioni DbgHelp, ad esempio questa, sono a thread singolo. Pertanto, le chiamate da più thread a questa funzione potrebbero causare un comportamento imprevisto o un danneggiamento della memoria. Per evitare questo problema, è necessario sincronizzare tutte le chiamate simultanee da più thread a questa funzione.

Questa funzione sostituisce la funzione SymRegisterFunctionEntryCallback . Per altre informazioni, vedere Supporto della piattaforma aggiornato. SymRegisterFunctionEntryCallback è definito come indicato di seguito in Dbghelp.h.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymRegisterFunctionEntryCallback SymRegisterFunctionEntryCallback64
#else
BOOL
IMAGEAPI
SymRegisterFunctionEntryCallback(
    __in HANDLE hProcess,
    __in PSYMBOL_FUNCENTRY_CALLBACK CallbackFunction,
    __in_opt PVOID UserContext
    );
#endif

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione dbghelp.h
Libreria Dbghelp.lib
DLL Dbghelp.dll
Componente ridistribuibile DbgHelp.dll 5.1 o versioni successive

Vedi anche

Funzioni DbgHelp

StackWalk64

SymRegisterFunctionEntryCallbackProc64