。NET的Visual Studio监视窗口中有哪些特殊变量?

问题描述 投票:17回答:5

昨天我在.NET的VS.NET监视窗口中了解了$ exception。这显示了当前抛出的异常,并且省时省力,无需找到小的感叹号图标并将鼠标悬停在其上。

监视窗口中还有哪些其他特殊变量?

((注:此问题是关于.NET,而不是C ++。)

.net visual-studio debugging
5个回答
9
投票

Visual Studio .NET调试中支持的Pseudovariables

  • $ exception:显示有关最后一个异常的信息。如果没有发生异常,则评估$exception将显示一条错误消息。仅在Visual C#中,当禁用“异常助手”时,$exception会在发生异常时自动添加到Locals窗口。
  • $ user
  • :显示带有运行该应用程序的帐户的帐户信息的结构。出于安全原因,不会显示密码信息。

    以下内容仅适用于Visual Basic:

  • $ delete或$$ delete:删除在Immediate窗口中创建的隐式变量。语法为$delete, 变量$$delete, 变量
  • $ objectids
  • $ listobjectids:将所有活动的对象ID显示为指定表达式的子代。语法为$objectid, expression或$listobjectids, expression
  • $$ [[N
  • #:显示对象ID等于N的对象。
  • $ dynamic
  • :显示实现IDynamicMetaObjectProvider的对象的特殊Dynamic View节点。接口。语法为$dynamic, object。此功能仅适用于使用.NET Framework版本4的代码。请参见Dynamic View
如果右键单击“监视”窗口中的任何变量,则可以创建

对象ID

。这会给您一个号码,例如第一个对象ID为1#。
<< [对象ID代表特定实例。然后可以像常规变量一样在“监视”窗口中监视实例,但是即使本地引用超出范围,您也可以继续监视实例。当最终收集到垃圾时,您将无法访问它。

使用“ @err”将显示GetLastError()的值,而“ @ err,hr”将显示错误消息。


8
投票
如果右键单击“监视”窗口中的任何变量,则可以创建

对象ID


2
投票

2
投票

2
投票
@ TIB;当前线程的线程信息块
© www.soinside.com 2019 - 2024. All rights reserved.