信息不可用,符号未加载到 mfcore.dll

Information not avaliable, symbols not loaded for mfcore.dll

本文关键字:加载 mfcore dll 符号 信息      更新时间:2023-10-16

好的,所以我收到此错误:

<Information not available, no symbols loaded for mfcore.dll>

我已经阅读过,人们说这不是代码的问题,所以我认为发布我的代码是没有意义的,因为它是不敬的。无论如何,我只是尝试使用MFCreateMediaSession,并最终在我的IMFMediaSession变量中出现该错误。

我已经看到它无法从 mfcore 中找到符号.pdb但是我已经检查了我的计算机,似乎找不到任何此类文件。

知道为什么会发生这种情况以及如何解决它吗?谢谢。

实际上,这个特定的问题似乎是一个长期存在的问题,特定于x86和x64构建的mfcore.dllVisual Studio 2017"模块"窗口显示mfcore.pdb符号已加载,但"符号文件"列中通常显示PDB文件完整路径的条目为空。右键单击"符号加载信息"可得到:

C:\Windows\System32\mfcore.pdb:找不到或打开 PDB 文件。C:\WINDOWS\mfcore.pdb:找不到或打开 PDB 文件。C:\WINDOWS\symbols\dll\mfcore.pdb:找不到或打开 PDB 文件。C:\WINDOWS\dll\mfcore.pdb:找不到或打开 PDB 文件。C:\symbols\mfcore.pdb\1dbac8124f0c746624116b7feef848f81\mfcore.pdb:PDB 与图像不匹配。C:\symbols\MicrosoftPublicSymbols\mfcore.pdb\1dbac8124f0c746624116b7feef848f81\mfcore.pdb:找不到或打开 PDB 文件。https://msdl.microsoft.com/download/symbols:从符号服务器下载的符号。C:\symbols\mfcore.pdb\1DBAC8124F0C746624116B7FEEF848F81\mfcore.pdb:PDB 与图像不匹配。

因此,它说 PDB 签名与二进制文件不匹配,并且每个新的 Windows 调试符号版本(直到最新的 10.15063.296(仍然会发生这种情况。请注意,此信息弹出窗口会告诉您调试器正在逐步搜索的位置、它要查找的唯一 ID 值以及出现的问题。

这可能是 PDB 签名的"年龄"部分不匹配,通常有用的 chkmatch.exe 工具无法强制。事实上,在这种情况下使用该工具应用签名更正似乎使情况比上述更糟,因为调试器甚至拒绝加载修补的 PDB,这最终导致重新下载不匹配的 PDB(因此覆盖修补的版本,如果您没有将其移出本地符号存储(。

另请参阅 MSDN 上的 dumpbin.exe/PDBPATH 选项、wintellect 上的这篇博客文章以及 SDK Debugging Tools for Windows 中的 symchk 实用程序。