共用方式為


NatVis 中的原生偵錯工具物件

概觀

原生偵錯工具物件代表偵錯工具環境的各種建構和行為。 偵錯工具物件的範例包括下列專案。

  • 工作階段
  • 執行緒/ 執行緒
  • 進程/ 進程
  • 堆疊框架/ 堆疊框架
  • 區域變數
  • 模組/ 模組
  • 公用程式
  • 狀態
  • 設定

您可以使用 dx 命令和 LINQ 來與偵錯工具物件互動。 如需詳細資訊,請參閱 dx (顯示偵錯工具物件模型運算式) 和使用 LINQ 搭配偵錯工具物件

您也可以使用 JavaScript 來處理偵錯工具物件。 如需詳細資訊,請參閱 JavaScript 延伸模組中的原生偵錯工具物件

本主題描述如何建立自訂 NatVis 視覺化檢視來顯示偵錯工具物件。

NatVis 開發資源

如需使用 NatVis 的一般資訊,請參閱這些資源。

建立原生物件的自訂檢視

.nvload

.nvlist

.nvunload

.nvunloadall

自訂 NatVis 物件範例

建立具有 CDog類別實例的簡單 C++ 應用程式。

class CDog
{
public:
   CDog(){m_age = 8; m_weight = 30;}
   long m_age;
   long m_weight;
};

int main()
{
   CDog MyDog;
   printf_s("%d, %d\n", MyDog.m_age, MyDog.m_weight);
   return 0;
}

建立名為 Dog.natvis 的檔案,其中包含此 XML:

<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="https://schemas.microsoft.com/vstudio/debugger/natvis/2010">
   <Type Name="CDog">
      <DisplayString>{{Age = {m_age} years. Weight = {m_weight} pounds.}}</DisplayString>
   </Type>
</AutoVisualizer>

將 Dog.natvis 複製到安裝目錄中的 [視覺化檢視] 資料夾,以進行 Windows 的偵錯工具。 例如:

C:\Program Files\Debugging Tools for Windows (x64) \Visualrs

執行程式,並在 main 函式中中斷。 採取步驟,讓變數 MyDog 初始化。 使用??再次使用dx來顯示 MyDog

0:000> ??MyDog
class CDog
   +0x000 m_age        : 0n8
   +0x004 m_weight     : 0n30
0:000> *
0:000> dx -r1 MyDog
.....
MyDog     : {Age = 8 years. Weight = 30 pounds.} [Type: CDog]

另請參閱

dx (顯示偵錯工具物件模型運算式)

使用 LINQ 搭配偵錯工具物件

JavaScript 延伸模組中的原生偵錯工具物件