常见 HRESULT 值 (调试接口访问 SDK)
以下 HRESULT
值最常由 DIA SDK 中的 API 返回。
下面是按值按数值顺序列出的值
值 | 名称 | 描述 |
---|---|---|
0x806d0002 | E_PDB_USAGE |
无效的参数或调用顺序 |
0x806d0004 | E_PDB_FILE_SYSTEM |
无法读取或写入文件、磁盘空间不足等。 |
0x806d0005 | E_PDB_NOT_FOUND |
找不到 PDB 文件 |
0x806d0006 | E_PDB_INVALID_SIG |
PDB 签名不匹配 |
0x806d0007 | E_PDB_INVALID_AGE |
PDB 年龄不匹配 |
0x806d0008 | E_PDB_PRECOMP_REQUIRED |
找不到预编译类型信息 |
0x806d0009 | E_PDB_OUT_OF_TI |
调试器类型不足 |
0x806d000c | E_PDB_FORMAT |
尝试加载或使用具有不兼容或不受支持的格式的 PDB |
0x806d000d | E_PDB_LIMIT |
超出 PDB 的内部限制 |
0x806d000e | E_PDB_CORRUPT |
PDB 记录或结构已损坏 |
0x806d0011 | E_PDB_ILLEGAL_TYPE_EDIT |
尝试在只读模式下编辑类型 |
0x806d0012 | E_PDB_INVALID_EXECUTABLE |
文件无法识别为有效的可执行文件 |
0x806d0013 | E_PDB_DBG_NOT_FOUND |
.找不到 DBG 文件 |
0x806d0014 | E_PDB_NO_DEBUG_INFO |
找不到识别的调试信息 |
0x806d0015 | E_PDB_INVALID_EXE_TIMESTAMP |
可执行文件的时间戳无效 |
0x806d0016 | E_PDB_RESERVED |
未记录的错误 |
0x806d0017 | E_PDB_DEBUG_INFO_NOT_IN_PDB |
调试信息不在 PDB 中 |
0x806d0018 | E_PDB_SYMSRV_BAD_CACHE_PATH |
使用 symsrv 指定的缓存位置不正确 |
0x806d0019 | E_PDB_SYMSRV_CACHE_FULL |
symsrv 缓存已满 |
0x806d0064 | E_DIA_INPROLOG |
在 prolog 中时无法执行堆栈帧 |
0x806d0065 | E_DIA_SYNTAX |
分析帧程序时出错 |
0x806d0066 | E_DIA_FRAME_ACCESS |
访问寄存器或内存时出错 |
0x806d0067 | E_DIA_VALUE |
计算值中的错误(例如除以零) |
0x806d00C8 | E_DIA_COFF_ACCESS |
在查询链接器生成的 PDB 时,访问 OBJ、LIB 或编译器时生成的 PDB 时出错 /DEBUG:fastlink |
0x806d00C9 | E_DIA_COMP_PDB_ACCESS |
访问编译器生成的 PDB 时出错 |
要求
标头:dia2.h