共用方式為


SymEnumerateModulesW64 函式 (dbghelp.h)

列舉 SymLoadModule64SymLoadModuleEx 函式針對進程載入的所有模組。

語法

BOOL IMAGEAPI SymEnumerateModulesW64(
  [in]           HANDLE                       hProcess,
  [in]           PSYM_ENUMMODULES_CALLBACKW64 EnumModulesCallback,
  [in, optional] PVOID                        UserContext
);

參數

[in] hProcess

原本傳遞至 SymInitialize 函式之進程的控制碼。

[in] EnumModulesCallback

列舉回呼函式。 每個模組會呼叫此函式一次。 如需詳細資訊,請參閱 SymEnumerateModulesProc64

[in, optional] UserContext

使用者定義的值或 Null。 此值只會傳遞至回呼函式。 一般而言,應用程式會使用此參數來傳遞資料結構的指標,讓回呼函式建立某種類型的內容。

傳回值

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

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

備註

SymEnumerateModules64函式會列舉SymLoadModule64為進程載入的所有模組,即使符號載入延遲也一樣。 列舉回呼函式會針對每個模組呼叫一次,並傳遞模組資訊。

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

若要呼叫此函式的 Unicode 版本,請定義DBGHELP_TRANSLATE_TCHAR。 SymEnumerateModulesW64 在 Dbghelp.h 中定義如下。


BOOL
IMAGEAPI
SymEnumerateModulesW64(
    __in HANDLE hProcess,
    __in PSYM_ENUMMODULES_CALLBACKW64 EnumModulesCallback,
    __in_opt PVOID UserContext
    );

#ifdef DBGHELP_TRANSLATE_TCHAR
#define SymEnumerateModules64  SymEnumerateModulesW64
#endif

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

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymEnumerateModules SymEnumerateModules64
#else
BOOL
IMAGEAPI
SymEnumerateModules(
    __in HANDLE hProcess,
    __in PSYM_ENUMMODULES_CALLBACK EnumModulesCallback,
    __in_opt PVOID UserContext
    );
#endif

範例

如需範例,請參閱 列舉符號模組

需求

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

另請參閱

DbgHelp 函式

SymEnumerateModulesProc64

SymInitialize

SymLoadModule64