我正在尝试将 PDB 文件读入 C# 应用程序。当我调用loadDataFromPdb
或loadAndValidateDataFromPdb
使用我知道存在的文件时,我得到一个 0x806D0005 的 HRESULT。不幸的是,我不知道这意味着什么。我有可能的结果列表 [这里]( http://msdn.microsoft.com/en-us/library/2008hf0e(v=VS.80).aspx)但恐怕我无法最终确定问题。
有人知道我做错了什么吗?或者至少是一种检查对应内容的方法?
异常:System.Runtime.InteropServices.COMException (0x806D0005):HRESULT 异常:Dia2Lib.DiaSourceClass.loadDataFromPdb (String pdbPath) 处的 0x806D0005
代码示例:
public static void LoadSymbolsForModule(uint baseAddress, uint size, uint timeStamp, DM_PDB_SIGNATURE signature)
{
IDiaDataSource m_source = new DiaSourceClass();
//m_source.loadAndValidateDataFromPdb(signature.path, ref signature.guid, 0, signature.age);
m_source.loadDataFromPdb(signature.path);
IDiaSession m_session;
m_source.openSession(out m_session);
m_session.loadAddress = baseAddress;
modules.Add(new Module(baseAddress, size, m_session));
}
提前谢谢各位。这个问题一直让我死了一天。