共用方式為


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 偵錯工具安裝目錄中的 Visualizers 資料夾。 例如:

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

運行您的程序,並闖入主函數。 採取一個步驟,以便初始化變數 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 延伸模組中的原生調試程式物件