IMAGEHLP_MODULE 结构 (dbghelp.h)
包含模块信息。
语法
typedef struct _IMAGEHLP_MODULE {
DWORD SizeOfStruct;
DWORD BaseOfImage;
DWORD ImageSize;
DWORD TimeDateStamp;
DWORD CheckSum;
DWORD NumSyms;
SYM_TYPE SymType;
CHAR ModuleName[32];
CHAR ImageName[256];
CHAR LoadedImageName[256];
} IMAGEHLP_MODULE, *PIMAGEHLP_MODULE;
成员
SizeOfStruct
结构大小(以字节为单位)。 调用方必须将此成员设置为 sizeof(IMAGEHLP_MODULE64)
。
BaseOfImage
加载映像的基虚拟地址。
ImageSize
图像的大小(以字节为单位)。
TimeDateStamp
日期和时间戳值。 根据系统时钟,该值以自 1970 年 1 月 1 日世界协调时间 00:00:00) 午夜 (经过的秒数表示。 可以使用 C 运行时 (CRT) 函数 ctime 打印时间戳。
CheckSum
映像的校验和。 此值可以为零。
NumSyms
符号表中的符号数。 将 SymPdb 指定为 SymType 参数的值时,此参数的值没有意义。
SymType
加载的符号的类型。 此成员可以是以下值之一。
值 | 含义 |
---|---|
|
COFF 符号。 |
|
CodeView 符号。 |
|
符号加载延迟。 |
|
DIA 符号。 |
|
从 DLL 导出表生成的符号。 |
|
不会加载任何符号。 |
|
PDB 符号。 |
|
.sym 文件。 |
|
SymLoadModuleEx 使用 SLMFLAG_VIRTUAL 创建的虚拟模块。 |
ModuleName[32]
模块名。
ImageName[256]
图像名称。 该名称可以包含也可能不包含完整路径。
LoadedImageName[256]
从中加载符号的文件的完整路径和文件名。
注解
此结构取代了 IMAGEHLP_MODULE 结构。 有关详细信息,请参阅 更新的平台支持。 IMAGEHLP_MODULE 在 DbgHelp.h 中定义如下。
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define IMAGEHLP_MODULE IMAGEHLP_MODULE64
#define PIMAGEHLP_MODULE PIMAGEHLP_MODULE64
#define IMAGEHLP_MODULEW IMAGEHLP_MODULEW64
#define PIMAGEHLP_MODULEW PIMAGEHLP_MODULEW64
#else
typedef struct _IMAGEHLP_MODULE {
DWORD SizeOfStruct;
DWORD BaseOfImage;
DWORD ImageSize;
DWORD TimeDateStamp;
DWORD CheckSum;
DWORD NumSyms;
SYM_TYPE SymType;
CHAR ModuleName[32];
CHAR ImageName[256];
CHAR LoadedImageName[256];
} IMAGEHLP_MODULE, *PIMAGEHLP_MODULE;
typedef struct _IMAGEHLP_MODULEW {
DWORD SizeOfStruct;
DWORD BaseOfImage;
DWORD ImageSize;
DWORD TimeDateStamp;
DWORD CheckSum;
DWORD NumSyms;
SYM_TYPE SymType;
WCHAR ModuleName[32];
WCHAR ImageName[256];
WCHAR LoadedImageName[256];
} IMAGEHLP_MODULEW, *PIMAGEHLP_MODULEW;
#endif
要求
要求 | 值 |
---|---|
Header | dbghelp.h |
可再发行组件 | DbgHelp.dll 5.1 或更高版本 |