Bagikan melalui


Fungsi SymEnumerateSymbols (dbghelp.h)

Menghitung semua simbol untuk modul tertentu.

Catatan Fungsi ini disediakan hanya untuk kompatibilitas. Aplikasi harus menggunakan SymEnumSymbols, yang lebih cepat dan lebih kuat.
 

Sintaks

DBHLP_DEPRECIATED BOOL IMAGEAPI SymEnumerateSymbols(
  [in]           HANDLE                    hProcess,
  [in]           ULONG                     BaseOfDll,
  [in]           PSYM_ENUMSYMBOLS_CALLBACK EnumSymbolsCallback,
  [in, optional] PVOID                     UserContext
);

Parameter

[in] hProcess

Handel untuk proses. Handel ini sebelumnya harus diteruskan ke fungsi SymInitialize .

[in] BaseOfDll

Alamat dasar modul yang simbolnya akan dijumlahkan.

[in] EnumSymbolsCallback

Fungsi panggilan balik yang menerima informasi simbol. Untuk informasi selengkapnya, lihat SymEnumerateSymbolsProc64.

[in, optional] UserContext

Nilai yang ditentukan pengguna atau NULL. Nilai ini diteruskan ke fungsi panggilan balik. Biasanya, parameter ini digunakan oleh aplikasi untuk meneruskan penunjuk ke struktur data yang memungkinkan fungsi panggilan balik menetapkan beberapa jenis konteks.

Mengembalikan nilai

Jika fungsi berhasil, nilai yang dikembalikan adalah TRUE.

Jika fungsi gagal, nilai yang dikembalikan adalah FALSE. Untuk mengambil informasi kesalahan yang diperluas, panggil GetLastError.

Keterangan

Fungsi SymEnumerateSymbols64 menghitung semua simbol untuk modul yang ditentukan. Informasi modul terletak oleh parameter BaseOfDll . Fungsi panggilan balik dipanggil sekali per simbol dan diteruskan informasi untuk setiap simbol.

Semua fungsi DbgHelp, seperti ini, adalah utas tunggal. Oleh karena itu, panggilan dari lebih dari satu utas ke fungsi ini kemungkinan akan mengakibatkan perilaku tak terduga atau kerusakan memori. Untuk menghindari hal ini, Anda harus menyinkronkan semua panggilan bersamaan dari lebih dari satu utas ke fungsi ini.

Versi Unicode dari fungsi ini, SymEnumerateSymbolsW64 didefinisikan sebagai berikut dalam Dbghelp.h.


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

Fungsi ini menggantikan fungsi SymEnumerateSymbols . Untuk informasi selengkapnya, lihat Dukungan Platform yang Diperbarui. SymEnumerateSymbols didefinisikan sebagai berikut dalam 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

Persyaratan

   
Target Platform Windows
Header dbghelp.h
Pustaka Dbghelp.lib
DLL Dbghelp.dll
Redistribusi DbgHelp.dll 5.1 atau yang lebih baru

Lihat juga

Fungsi DbgHelp

SymEnumSymbols

SymEnumerateSymbolsProc64

SymInitialize