无法使用调试器进入第 3 方代码
Unable to step into 3rd party code using debugger
我想使用调试器进入 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 文件并设置了符号
我取消选中工具->选项->调试->仅启用我的代码
在断点 Debug->Windows->Modules 显示加载了 mscorlib.dll 的 Symbol 文件。
异常设置为
[更新]
Lance Li 指出无法找到或打开 pdb 文件消息
当我 select 符号加载信息时,它提到位置是
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 但收到一条消息
A matching symbol file was not found in this folder
我尝试暂停 Resharper,但没有帮助。
[更新]
我注意到它正在 GAC 中查找文件
我看到 d:\pdb.1 中有一个 mscorlib.pdb 的副本
是否以某种方式重新 运行ges 一些期望在 GAC 中找到 Dev Express .pdbs 的东西?
源码在GitHub
[更新]
在 DevExpress 问题中,Dennis 指出当他按下 F11 时 Visual Studio 要求提供源代码路径。我认为这对我来说发生过一次,我已经 select 编辑了默认路径。现在Visual Studio不再问了。
我尝试重新克隆应用程序,但没有帮助。
我尝试使用 VS2017 打开,但没有帮助。
[更新]
我安装在另一台电脑上
然后在断点处我收到了一个对话框 select 源代码。
我在
找到了来源
Directory of C:\Program Files (x86)\DevExpress 19.1\Components\Sources\DevExpress.ExpressApp\DevExpress.ExpressApp\DevExpress.Persistent.Base
然后我能够在第二台计算机上单步执行 Dev Express 代码。
现在弄清楚如何纠正第一台计算机上的行为。
[更新]
我能够通过以下方法打开“查找源”对话框。
运行 断点,然后 select 调试 -> Windows -> 模块。
然后右键单击卸载的模块并取消选中始终自动加载。
在那之后,当我再次 运行 时,我得到了允许我定位源的对话框。
我的问题是 Visual Studio 在错误的地方寻找来源。
此外,因为它被告知自动查找错误的位置,所以我没有收到要求我定位源的对话框。
为了接收 Find Source Dialog ,诀窍是取消选中 Always Load Automatically 选项。
为了获得这个选项,我 运行 断点,然后选择调试 -> Windows -> 模块。然后右键单击一个卸载的模块并取消选中始终自动加载。
另一种方法可能是将正确的路径添加到解决方案->属性->通用属性->包含源代码的目录
我想使用调试器进入 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 文件并设置了符号
我取消选中工具->选项->调试->仅启用我的代码
在断点 Debug->Windows->Modules 显示加载了 mscorlib.dll 的 Symbol 文件。
异常设置为
[更新]
Lance Li 指出无法找到或打开 pdb 文件消息
当我 select 符号加载信息时,它提到位置是
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 但收到一条消息
A matching symbol file was not found in this folder
我尝试暂停 Resharper,但没有帮助。
[更新]
我注意到它正在 GAC 中查找文件
我看到 d:\pdb.1 中有一个 mscorlib.pdb 的副本 是否以某种方式重新 运行ges 一些期望在 GAC 中找到 Dev Express .pdbs 的东西?
源码在GitHub
[更新]
在 DevExpress 问题中,Dennis 指出当他按下 F11 时 Visual Studio 要求提供源代码路径。我认为这对我来说发生过一次,我已经 select 编辑了默认路径。现在Visual Studio不再问了。
我尝试重新克隆应用程序,但没有帮助。 我尝试使用 VS2017 打开,但没有帮助。
[更新]
我安装在另一台电脑上 然后在断点处我收到了一个对话框 select 源代码。
我在
找到了来源Directory of C:\Program Files (x86)\DevExpress 19.1\Components\Sources\DevExpress.ExpressApp\DevExpress.ExpressApp\DevExpress.Persistent.Base
然后我能够在第二台计算机上单步执行 Dev Express 代码。
现在弄清楚如何纠正第一台计算机上的行为。
[更新] 我能够通过以下方法打开“查找源”对话框。 运行 断点,然后 select 调试 -> Windows -> 模块。 然后右键单击卸载的模块并取消选中始终自动加载。
在那之后,当我再次 运行 时,我得到了允许我定位源的对话框。
我的问题是 Visual Studio 在错误的地方寻找来源。 此外,因为它被告知自动查找错误的位置,所以我没有收到要求我定位源的对话框。
为了接收 Find Source Dialog ,诀窍是取消选中 Always Load Automatically 选项。
为了获得这个选项,我 运行 断点,然后选择调试 -> Windows -> 模块。然后右键单击一个卸载的模块并取消选中始终自动加载。
另一种方法可能是将正确的路径添加到解决方案->属性->通用属性->包含源代码的目录