代码之家  ›  专栏  ›  技术社区  ›  James L

在引发异常之前查看已调试的.Net应用程序的代码

  •  0
  • James L  · 技术社区  · 17 年前

    我已使用VisualStudio2008连接到正在运行的.NET1.1应用程序。我在本地机器上有调试符号和代码。如果发生异常,代码将正常弹出。但是,我无法确定如何查看代码并预先设置断点。

    有把戏吗?

    4 回复  |  直到 17 年前
        1
  •  1
  •   John Saunders    17 年前

    首先,它可能有 曾经 一个.NET 1.1应用程序,但您在VS2008中没有运行.NET 1.1-您正在运行.NET 2.0。

    其次,诀窍非常明显,很明显您不知道的原因——打开源文件,设置断点。

        2
  •  0
  •   Sam Harwell    17 年前

    Debug > Break All . 应用程序暂停后,打开相关的源文件,然后 允许您在单击“继续”之前设置断点。

        3
  •  0
  •   Remus Rusanu    17 年前

    cordbg.exe可以调试.Net 1.1进程,您可以在1.1 SDK中使用它,但使用起来相当痛苦。而且 Windbg 与原来的SOS。这是 a good SOS cheat sheet 为了Windbg。

        4
  •  0
  •   Justin    17 年前

    • 确保使用正确的代码类型连接到流程-如果您的流程同时包含非托管代码和托管代码,则不要依赖“自动”为您工作,明确说明您尝试调试的代码类型
    • 转到模块窗口(调试->窗口->模块),您可能需要在“自定义…”菜单中启用它
    • 检查以确保尝试调试的程序集已加载,并且符号已加载-如果尚未加载,则右键单击该模块并选择“加载符号”
    • 打开代码文件并放置断点-如果断点出现时带有一个小警告符号,请查看它的内容,
    • 您可能需要转到“工具->选项->调试->常规”并取消选中“仅启用我的代码(仅限托管)”
    • 如果您认为您的源代码可能有点过时,您可能还希望取消选中“要求源文件与原始版本完全匹配”(但是要小心,因为这可能会导致您使用完全错误的源代码进行调试,这可能会非常混乱)