Fungsi SymLoadModule (dbghelp.h)

Memuat tabel simbol.

Fungsi ini telah digantikan oleh fungsi SymLoadModuleEx .

Sintaks

DWORD IMAGEAPI SymLoadModule(
  [in]           HANDLE hProcess,
  [in, optional] HANDLE hFile,
  [in, optional] PCSTR  ImageName,
  [in, optional] PCSTR  ModuleName,
  [in]           DWORD  BaseOfDll,
  [in]           DWORD  SizeOfDll
);

Parameter

[in] hProcess

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

[in, optional] hFile

Handel ke file untuk gambar yang dapat dieksekusi. Argumen ini sebagian besar digunakan oleh debugger, di mana debugger melewati handel file yang diperoleh dari peristiwa penelusuran kesalahan. Nilai NULL menunjukkan bahwa hFile tidak digunakan.

[in, optional] ImageName

Nama gambar yang dapat dieksekusi. Nama ini dapat berisi jalur parsial, jalur lengkap, atau tidak ada jalur sama sekali. Jika file tidak dapat ditemukan dengan nama yang disediakan, jalur pencarian simbol digunakan.

[in, optional] ModuleName

Nama pintasan untuk modul. Jika nilai penunjuk ADALAH NULL, pustaka akan membuat nama menggunakan nama dasar file simbol.

[in] BaseOfDll

Alamat beban modul. Jika nilainya nol, pustaka mendapatkan alamat beban dari file simbol. Alamat beban yang terkandung dalam file simbol belum tentu merupakan alamat beban aktual. Debugger dan aplikasi lain yang memiliki alamat beban aktual harus menggunakan alamat beban nyata saat memanggil fungsi ini.

Jika gambar adalah file .pdb, parameter ini tidak boleh nol.

[in] SizeOfDll

Ukuran modul, dalam byte. Jika nilainya nol, pustaka mendapatkan ukuran dari file simbol. Ukuran yang terkandung dalam file simbol belum tentu ukuran aktual. Debugger dan aplikasi lain yang memiliki ukuran aktual harus menggunakan ukuran nyata saat memanggil fungsi ini.

Jika gambar adalah file .pdb, parameter ini tidak boleh nol.

Menampilkan nilai

Jika fungsi berhasil, nilai pengembalian adalah alamat dasar modul yang dimuat.

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

Jika modul sudah dimuat, nilai yang dikembalikan adalah nol dan GetLastError mengembalikan ERROR_SUCCESS.

Keterangan

Penangan simbol membuat entri untuk modul dan jika opsi pemuatan simbol yang ditangguhkan dimatikan, upaya dilakukan untuk memuat simbol. Jika pemuatan simbol yang ditangguhkan diaktifkan, modul ditandai sebagai ditangguhkan dan simbol tidak dimuat sampai referensi dibuat ke simbol dalam modul.

Untuk membongkar tabel simbol, gunakan fungsi SymUnloadModule64 .

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.

Fungsi ini menggantikan fungsi SymLoadModule . Untuk informasi selengkapnya, lihat Dukungan Platform yang Diperbarui. SymLoadModule didefinisikan sebagai berikut dalam DbgHelp.h.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymLoadModule SymLoadModule64
#else
DWORD
IMAGEAPI
SymLoadModule(
    __in HANDLE hProcess,
    __in_opt HANDLE hFile,
    __in_opt PCSTR ImageName,
    __in_opt PCSTR ModuleName,
    __in DWORD BaseOfDll,
    __in DWORD SizeOfDll
    );
#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

SymInitialize

SymUnloadModule64