c# - 在应用程序运行时随时启动 Visual Studio Debugger

标签 c# visual-studio-2010 debugging

我正在使用 Visual Studio 开发一个应用程序,当我在客户端机器上安装它(通过安装项目,.msi 文件)并运行它时,我遇到了一些“Heisenbug”异常。 我几乎可以肯定该错误来自代码路径的较早部分,因此我想对其进行调试。

事实是:当应用程序崩溃时,会显示以下对话框(当然指的是我的应用程序而不是 Windows 资源管理器):

enter image description here

如果我选择“调试程序”,Visual Studio 调试器(它在部署的机器上以某种方式可用)启动并显示异常的详细信息。

我想做的是从一开始就启动调试 session ,这样我就可以继续按 F10 和 F11 并检查一些中间值。

有人知道如何在应用程序运行时随时启动 Visual Studio 调试 session 吗?并不是说我正在运行已部署的应用程序,而不是从 Visual Studio 启动它。

最佳答案

由于您已在运行已部署应用程序的计算机上启动并运行 Visual Studio,因此应该很简单:

  1. 运行应用程序
  2. 在 Visual Studio 中加载项目
  3. 转到 DEBUG -> Attach to process...
  4. 将弹出一个包含所有正在运行的进程的列表

    从列表中选择应用程序对应的进程,以你的exe命名(如果按数字ID排序,很有可能靠近最靠前的)

  5. 单击“附加”,Visual Studio 将开始调试,就像您通常使用 F5 启动时一样。


我还有另一个建议:实现大量 日志记录,直到您弄清楚所有问题。写下您怀疑的所有内容,以备进一步分析,以防出现问题:值、查询等。

关于c# - 在应用程序运行时随时启动 Visual Studio Debugger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28987281/

相关文章:

javascript - 为什么 FireFox 调试器不显示完整的源代码?

函数返回字符数组的 C 问题

c# - 无法连接到远程 SQL Server Express Edition

visual-studio-2010 - 如何: Stop Visual Studio XAML Editor from Adding mc:Ignorable

windows - 如何从网络共享调试 Visual Studio 2010 中的解决方案?

asp.net - Visual Studio | ASP.NET 配置错误

multithreading - Qt中的线程ID

C# 模拟具体类。如何?

c# - NHibernate 中不区分大小写的排序顺序

c# - 使用 way2sms api 发送短信