2010-10-01 92 views
0

我创建了一个简单的winform项目,添加了一个触发 IndexOutOfRangeException的单一方法的ClassLibrary。如何使用PDB文件来调试应用程序?

表单调用这个库并显示未被修改的异常。
我使用pdb文件构建发布模式下的所有内容

当我运行Exe时,我得到带有错误信息的错误报告窗口。
现在是什么?如何使用此错误报告的PDB文件来调试程序?

回答

1

使用PDB文件的最简单方法是让Visual Studio完成繁重的任务 - 使用Visual Studio的“调试”命令(默认为F5)启动程序,或运行程序并使用“附加到进程“Visual Studio的调试菜单中的项目。如果PDB与可执行文件位于同一目录中,Visual Studio应该检测并使用它,而无需您进一步干预。

+0

因此,实际的错误报告根本不需要? – urker 2010-10-01 17:46:00

+0

我假设您问的是“报告问题”对话框 - 如果您在那个时候,您的应用程序已被终止,并且调试已为时过晚。所以不,不需要使用pdb文件。 – Ben 2010-10-01 18:44:28

1

在VS 2013(我不知道VS 2008)中,如接受的答案中所述,运行程序并使用“调试菜单”中的“附加到进程”的替代方法是在您添加希望在你的类开始调试:

Debugger.Launch(); 

此外,在类的顶部添加这一行:

using System.Diagnostics; 

然后重新编译代码。如果要附加到使用此类的任何一个进程,这可能很有用。

+0

这对我有效!在提到你提到的代码并通过Delphi应用程序启动我的dll后,Windows问我是否想用我打开的Visual Studio实例进行调试,并像魅力一样工作! – digulino 2016-06-14 14:55:27