IMAGEHLP_MODULE64 结构是 Win32 API 中 Dbghelp.h 头文件中定义的一个结构,用于描述64位系统上模块(executable 或 DLL)的信息。以下是该结构体的定义:
typedef struct _IMAGEHLP_MODULE64 {
    DWORD    SizeOfStruct;       // 结构体的大小,用于版本控制
    DWORD64  BaseOfImage;        // 模块的基地址
    DWORD    ImageSize;          // 模块的大小(字节)
    DWORD    TimeDateStamp;      // 模块的时间戳
    DWORD    CheckSum;           // 模块的校验和
    DWORD    NumSyms;            // 模块中的符号数量
    SYM_TYPE SymType;            // 符号类型
    CHAR     ModuleName[32];     // 模块的名称
    CHAR     ImageName[256];     // 模块的完整路径
    CHAR     LoadedImageName[256];// 装载的模块路径
    CHAR     LoadedPdbName[256];  // 装载的 PDB 文件的路径
    DWORD    CVSig;              // CV信息的签名
    CHAR     CVData[MAX_PATH * 3]; // CV信息的数据
    DWORD    PdbSig;             // PDB信息的签名
    GUID     PdbSig70;           // PDB信息的签名(GUID格式)
    DWORD    PdbAge;             // PDB信息的年龄
    BOOLEAN  PdbUnmatched;       // 是否匹配 PDB
    BOOLEAN  DbgUnmatched;       // 是否匹配 DBG 文件
    BOOLEAN  LineNumbers;        // 是否包含行号信息
    BOOLEAN  GlobalSymbols;      // 是否包含全局符号信息
    BOOLEAN  TypeInfo;           // 是否包含类型信息
    BOOLEAN  SourceIndexed;      // 是否源码已建立索引
    BOOLEAN  Publics;            // 是否包含公共符号
} IMAGEHLP_MODULE64, *PIMAGEHLP_MODULE64;

这个结构体包含了与 IMAGEHLP_MODULE 结构相似的信息,但字段的数据类型和一些附加信息适应了64位系统。它提供了关于模块的详细信息,包括模块的基地址、大小、时间戳、校验和、符号数量等。

IMAGEHLP_MODULE64 结构主要在符号处理、调试和堆栈跟踪等场景中使用,帮助开发人员获取有关64位系统上模块的重要信息。


转载请注明出处:http://www.zyzy.cn/article/detail/26393/Win32 API/Dbghelp.h/IMAGEHLP_MODULE64