调试托管代码

本主题适用于:

版本

Visual Basic

C#

C++

Web Developer

学习版

主题适用 主题适用

仅限托管

主题适用

专业版、高级专业版和旗舰版

主题适用 主题适用

仅限托管

主题适用

本节包含了托管应用程序或使用面向公共语言运行时的语言(如 Visual Basic、C# 和 C++)编写的应用程序的常见调试问题和调试技术。 此处介绍的技术都是高级技术。 有关更多信息,请参见使用调试器

本节内容

  • “输出”窗口中的诊断消息
    描述 DebugTrace 类,通过这些类,您可以向**“输出”**窗口写入运行时消息。 这些类中包含的输出方法支持两种信息输出:不中断执行的信息输出以及在指定条件失败时也会中断执行的信息输出。

  • 托管代码中的断言
    描述托管代码中的断言,该断言用于测试作为 Assert 方法的参数指定的条件。 此外,本主题还提供代码示例、有关使用 DebugTrace 类方法的信息、代码调试版和发布版中的注意事项、副作用、断言参数、自定义断言行为和配置文件。

  • Visual Basic 中的 Stop 语句
    描述 Stop 语句,该语句提供了一种设置断点的替代方法。 还提供了代码示例并对 Stop 语句和 End 语句以及 Stop 和 Assert 语句进行了比较。

  • 演练:调试 Windows 窗体
    提供创建 Windows 窗体并调试该窗体的逐步骤说明。 Windows 窗体(托管 Windows 应用程序的标准组件)是最常见的托管应用程序之一。 本演练使用 Visual C# 和 Visual Basic,不过使用 C++ 创建 Windows 窗体的方法通常与此类似。

  • 调试 OnStart 方法
    提供使您能够调试托管 Windows 服务的 OnStart 方法的代码示例。 若要调试 Windows 服务的 OnStart 方法,您必须另外添加几行代码以模拟该服务。

  • 混合模式调试
    讨论调试混合模式的应用程序。 这表示合并本机代码和托管代码的任何应用程序。

  • 错误:由于系统上启用了内核调试器,因此不可能进行调试
    描述当您尝试在以调试模式启动的 Windows 7、Windows Vista、Windows XP、Windows 2000 或 Windows NT 系统上调试托管代码时出现的错误消息。

  • JIT 优化和调试
    描述调试时 JIT 优化的作用。

  • 调试 LINQ 和 DLINQ
    讨论用于调试 LINQ 查询的技术。

  • 演练:调试并行应用程序
    描述如何使用**“并行任务”“并行堆栈”**工具窗口调试并行应用程序。

相关章节

  • 跟踪应用程序和在应用程序中插入检测点
    描述跟踪(一种用于监视运行中应用程序的执行情况的方法)和检测(将跟踪语句放在代码中的重要位置)。 此主题还提供了指向介绍以下内容的主题的链接:检测和跟踪、跟踪开关、跟踪侦听器、跟踪应用程序中的代码、将跟踪语句添加到应用程序代码,以及使用 DebugTrace 进行有条件地编译。

  • /ASSEMBLYDEBUG
    描述将 DebuggableAttribute 添加到用 C++ 编写的代码的链接器选项。 在使用调试功能(如使用 C++ 附加)时需要此特性。

  • 调试 Windows 服务应用程序
    提供调试 Windows 服务应用程序的注意事项,其中包括:设置、附加到进程、调试服务的 OnStart 方法中的代码和 Main 方法中的代码、设置断点以及使用服务控制管理器启动、停止、暂停和继续服务。

  • 调试和分析
    探讨如何调试 .NET Framework 应用程序和配置要求。

  • 调试脚本和 Web 应用程序
    描述在调试脚本和 Web 应用程序时可能会遇到的常见调试问题和技术。

  • Visual Studio 调试器中的新增功能
    此版本的 Visual Studio 中新增的调试功能的说明。

  • 调试主页
    提供指向调试文档的较大章节的链接。 涉及的信息包括:调试器的新增功能,设置和准备,断点,处理异常,编辑和继续,调试托管代码,调试 Visual C++ 项目,调试 COM 和 ActiveX,调试 DLL,调试 SQL,以及用户界面参考。

请参见

任务

演练:设计时调试自定义 Windows 窗体控件

概念

调试器安全

其他资源

使用 Visual Studio 进行调试