概觀
原生調試程序物件代表調試程式環境的各種建構和行為。 調試程式物件的範例包括下列專案。
- 會期
- 線程/討論串
- 程序處理/ 程序
- 堆疊框架/堆疊框架
- 局部變數
- 模組/ 模組
- 效用
- 國家
- 設定
您可以使用 dx 命令和 LINQ 與偵錯工具物件互動。 如需詳細資訊,請參閱 dx (顯示偵錯工具物件模型運算式) 和 搭配偵錯工具物件使用 LINQ。
您也可以使用 JavaScript 來處理偵錯工具物件。 如需相關資訊,請參閱 JavaScript 延伸模組中的原生偵錯工具物件。
本主題說明如何建立自訂 NatVis 視覺化工具來顯示偵錯工具物件。
NatVis 開發資源
如需使用 NatVis 的一般資訊,請參閱這些資源。
自訂 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]