共用方式為


SymEnumerateSymbols64 函式 (dbghelp.h)

列舉指定模組的所有符號。

注意 此函式僅供相容性使用。 應用程式應該使用 SymEnumSymbols,這更快速且更強大。
 

語法

DBHLP_DEPRECIATED BOOL IMAGEAPI SymEnumerateSymbols64(
  [in]           HANDLE                      hProcess,
  [in]           ULONG64                     BaseOfDll,
  [in]           PSYM_ENUMSYMBOLS_CALLBACK64 EnumSymbolsCallback,
  [in, optional] PVOID                       UserContext
);

參數

[in] hProcess

進程的句柄。 此句柄先前必須傳遞至 SymInitialize 函式

[in] BaseOfDll

要列舉符號之模組的基位址。

[in] EnumSymbolsCallback

接收符號資訊的回呼函式。 如需詳細資訊,請參閱 SymEnumerateSymbolsProc64

[in, optional] UserContext

用戶定義的值或 NULL。 這個值會傳遞至回呼函式。 一般而言,這個參數是由應用程式用來傳遞數據結構的指標,讓回呼函式建立某種類型的內容。

傳回值

如果函式成功,則傳回值為 TRUE

如果函式失敗,則傳回值為 FALSE。 若要擷取擴充的錯誤資訊,請呼叫 GetLastError

備註

SymEnumerateSymbols64 函式會列舉指定模組的所有符號。 模組資訊是由 BaseOfDll 參數所找到。 每個符號都會呼叫回呼函式一次,並傳遞每個符號的資訊。

所有 DbgHelp 函式,例如此函式都是單個線程。 因此,從多個線程呼叫此函式可能會導致非預期的行為或記憶體損毀。 若要避免這種情況,您必須將所有並行呼叫從多個線程同步處理到此函式。

此函式的 Unicode 版本 SymEnumerateSymbolsW64 定義如下 Dbghelp.h。


BOOL
IMAGEAPI
SymEnumerateSymbolsW64(
    __in HANDLE hProcess,
    __in ULONG64 BaseOfDll,
    __in PSYM_ENUMSYMBOLS_CALLBACK64W EnumSymbolsCallback,
    __in_opt PVOID UserContext
    );

此函式會取代 SymEnumerateSymbols 函式。 如需詳細資訊,請參閱 更新的平台支援SymEnumerateSymbols 的定義如下 Dbghelp.h。

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymEnumerateSymbols SymEnumerateSymbols64
#define SymEnumerateSymbolsW SymEnumerateSymbolsW64
#else
BOOL
IMAGEAPI
SymEnumerateSymbols(
    __in HANDLE hProcess,
    __in ULONG BaseOfDll,
    __in PSYM_ENUMSYMBOLS_CALLBACK EnumSymbolsCallback,
    __in_opt PVOID UserContext
    );

BOOL
IMAGEAPI
SymEnumerateSymbolsW(
    __in HANDLE hProcess,
    __in ULONG BaseOfDll,
    __in PSYM_ENUMSYMBOLS_CALLBACKW EnumSymbolsCallback,
    __in_opt PVOID UserContext
    );
#endif

規格需求

需求
目標平台 Windows
標頭 dbghelp.h
程式庫 Dbghelp.lib
Dll Dbghelp.dll
可轉散發套件 DbgHelp.dll 5.1 或更新版本

另請參閱

DbgHelp 函式

SymEnumSymbols

SymEnumerateSymbolsProc64

SymInitialize