无法使用调试器进入第3方代码

时间:2019-09-07 01:17:21

标签: visual-studio-debugging xaf

我想使用调试器进入DevExpress XAF代码。

我有asked about it here,但是在发现我做错事情时遇到了问题。

VS2019 16.2.2 Dev Express XAF 19.1.5 Winforms项目 断点在Program.cs中 在

winApplication.Start

中的

DevExpress.ExpressApp.Win.WinApplication

我下载了.pdb文件并设置了符号 Symbols set up

我未选中工具->选项->调试->仅启用我的代码

在断点处,Debug-> Windows-> Modules显示已加载mscorlib.dll的Symbol文件。

mscorelib

例外设置是

Exception settings

[更新]

Lance Li指出找不到或打开pdb文件的消息 cannot find or open the pdb file

当我选择“符号加载信息”时,它提到的位置是

C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\DevExpress.Utils.v19.1\v4.0_19.1.5.0__b88d1754d700e49a\DevExpress.Utils.v19.1.pdb: Cannot find or open the PDB file.

我尝试单击“符号”屏幕中的“加载所有符号”按钮,但这没有帮助。

我试图找到pdb,但收到一条消息

  

在此文件夹中找不到匹配的符号文件

matching symbol file not found

我尝试暂停Resharper,但这没有帮助。

[更新]

我注意到它正在GAC中寻找文件

  

In the GAC

我看到在d:\ pdb \ 19.1中有一个mscorlib.pdb的副本 可能是以某种方式重新安排了一些期望以便在GAC中找到Dev Express .pdbs吗?

源代码位于GitHub

[更新]

在DevExpress问题中,丹尼斯指出,当他按下F11时,Visual Studio要求提供源代码路径。我认为这种情况对我来说一次,我选择了默认路径。现在,Visual Studio不再询问。

我尝试重新克隆该应用程序,但没有帮助。 我尝试使用VS2017打开,但这没有帮助。

[更新]

我安装在另一台计算机上 然后在断点处,我收到一个对话框来选择源代码。

我的来源位于

Directory of C:\Program Files (x86)\DevExpress 19.1\Components\Sources\DevExpress.ExpressApp\DevExpress.ExpressApp\DevExpress.Persistent.Base

然后,我能够在第二台计算机上逐步浏览Dev Express代码。

现在要弄清楚如何纠正第一台计算机上的行为。

[更新] 我可以通过以下方法启动“查找源”对话框。 运行到断点,然后选择“调试”->“ Windows”->“模块”。 然后右键单击已卸载的模块,然后取消选中始终自动加载。

之后,当我再次运行时,出现对​​话框,让我可以找到源。

1 个答案:

答案 0 :(得分:2)

我的问题是Visual Studio在错误的位置查找源。 除此之外,由于已被告知要自动查找错误的位置,因此我没有收到对话框要求我查找源。

为了接收“查找源文件”对话框,关键是要取消“自动加载始终”选项。

要获得此选项,我跑到断点,然后选择“调试”->“ Windows”->“模块”。然后右键单击已卸载的模块,然后取消选中始终自动加载。

另一种可能的方法是将正确的路径添加到“解决方案”->“属性”->“公共属性”->“包含源代码的目录”