如何:使用 SOS

更新:2007 年 11 月

本主题适用于:

版本

Visual Basic

C#

C++

Web Developer

速成版

主题不适用 主题不适用 主题适用 主题不适用

标准版

主题适用

主题适用

主题适用

主题不适用

专业团队版

主题适用

主题适用

主题适用

主题不适用

表格图例:

主题适用

适用

主题不适用

不适用

主题适用,但命令默认情况下隐藏

默认情况下隐藏的一条或多条命令。

要查看使用托管代码编写的应用程序的转储信息,必须使用称为 SOS 的工具,它是一个可以加载到调试器中的外部组件。本机代码的转储信息显示在常规调试器窗口中。因此,调试本机代码时不需要 SOS。

要使用 SOS,必须首先使用 即时窗口 将 SOS 扩展加载到调试器中。然后,在“即时”窗口中输入命令,并且还可以在该窗口中查看输出信息。SOS 不使用任何其他调试器窗口,如“调用堆栈”或“局部变量”窗口。

SOS 可用于调试托管应用程序以及转储文件。要使用 SOS 调试托管应用程序,必须同时以本机和托管模式附加调试器。有关信息,请参见 SOS 调试扩展 (SOS.dll)。有关更多信息,请参见 MSDN BUGSLAYER 专栏文章“SOS: It's Not Just an ABBA Song Anymore”(SOS:不再只是一首 ABBA 歌曲)

有关如何使用 SOS 的帮助信息,请使用以下过程中介绍的 !help 命令。

加载 SOS 调试器扩展

  1. 打开转储文件。

    有关更多信息,请参见 如何:保存和打开转储文件

  2. 在“调试”菜单上,单击“启动”并等待执行中断。

  3. 在“即时”窗口中,键入以下命令:

    .load sos
    

    如果“即时”窗口无法找到 SOS,您可能需要指定完整的路径,即 %windir%\Microsoft.NET\Framework\<version>\sos.dll

    SOS 的版本必须与转储文件中使用的公共语言运行时的版本匹配。

获取 SOS 命令帮助

  1. 加载 SOS 后,在“即时”窗口中键入以下命令:!help。

  2. 要获取有关某个命令的更为具体的信息,请键入“!help 命令”。

停止 SOS 命令

  • 在“调试”菜单上,单击“停止计算”。

请参见

概念

转储

参考

SOS 调试扩展 (SOS.dll)