我在VS2010中有一个新的SDI项目,但我无法进入MFC源。我按照here步骤进行操作,似乎资源符号由于某些原因而未加载,但是如果在那里投票最多的答案中所述,它不会加载右键。
当我进入调试>> Windows>模块,该窗口将符号状态列显示为Cannot find or open the PDB file
。我想这就是问题,但当我右键点击任何一个模块(例如mfc100enu.dll)时,我得到另一个带有类似消息的对话框,但找不到符号文件。
如果找不到符号文件以及如何解决这个问题会出现什么问题?
我想要介入的功能是我的基本SDI应用程序中的LoadFrame
。
BOOL CMainFrame::LoadFrame(UINT nIDResource, DWORD dwDefaultStyle, CWnd* pParentWnd, CCreateContext* pContext)
{
// base class does the real work
if (!CFrameWndEx::LoadFrame(nIDResource, dwDefaultStyle, pParentWnd, pContext))
{
return FALSE;
}
...
}
任何提示如何不加载它们以及可能出错的地方?感谢
更新
我能够通过转到Tools-> Options-> Debugging-> Symbols并选择复选框" Microsoft Symbol Servers"来使VS2010加载符号文件。现在Visual Studio会自动加载PDB。但是我仍然无法进入这个功能。
答案 0 :(得分:5)
我发现添加符号服务器并没有为我解决问题。
解决问题的方法是将此目录添加到位置列表以查找符号。不确定为什么Visual Studio不会自己添加它。
C:\ Windows \ Symbols \ dll
答案 1 :(得分:3)
将mfc库链接模式更改为静态库。 在项目属性中>>配置属性>>一般>>使用MFC
调试后,您可以更改回您喜欢的内容。 希望这有帮助。
答案 2 :(得分:2)
您需要Visual Studio Professional或更高版本。然后,您将获得MFC的源和调试符号。如果给出了这一点,您只需要确保PDB位于符号路径中,这应该是正确安装Visual Studio的情况。
答案 3 :(得分:1)
使用 Visual Studio 2019,我遇到了同样的问题。 我无法使用 VC 调试器进入 MFC 基类。 我已经通过添加符号目录解决了它。到“符号文件位置”。
工具 > 选项 > 调试 > 符号
另外,这个设置不能解决MBCS——多字节字符集项目。 对于多字节项目,您必须使用“Microsoft Symbol Server”。 VS 安装程序不会为您安装所需的符号文件。 这意味着您无法在没有公共网络的情况下将 MBCS 项目调试到 MS。
查看下一个链接以获取更多信息。
https://docs.microsoft.com/ko-kr/cpp/mfc/mfc-mbcs-dll-add-on
我觉得VS2019的安装程序和安装太复杂了。 MS 迅速改变了它。在所有开发人员离开 VS 平台之前,他们不得继续。