簡體   English   中英

運用 <CustomVisualizer> 用natvis標記

[英]Using <CustomVisualizer> tag with natvis

我試圖利用natvis.xsd(natvis架構文件)中定義的標簽,以編寫C#或C ++代碼來可視化類型。 我找不到任何關於此的文檔,所以我不確定它是如何工作的。 特別是我需要為CustomVisualizer指定一個GUID。 這個GUID映射到什么? 如何導出使用此GUID注冊的類? 我需要實現什么界面? 簡而言之,如何將我在.natvis文件中指定的GUID連接到格式化對象的代碼?

natvis的文檔沒有提到CustomVisualizer標簽的存在,但它在natvis模式文件中並顯示在自動完成中。 我發現PyTools似乎使用這種方法實現了natvis Custom Visualizers,但似乎隱藏了一些代碼,而且我無法使用這種方法找到實際原生可視化器的源代碼。

這是我想要工作的示例natvis文件:

<?xml version="1.0" encoding="utf-8" ?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
  <Type Name="MyCustomVisualizer">
    <CustomVisualizer VisualizerId="{387446F9-4B29-4EE7-A948-346BF6995603}"/>
  </Type>
</AutoVisualizer>

我正在具體詢問如何編寫C#和/或C ++代碼以使其工作。

https://code.msdn.microsoft.com/Writing-graphical-debugger-a17e3d75

您想使用UIVisualizer而不是CustomVisualizer。 盡管CustomVisualizer出現在架構中,但似乎沒有關於它的文檔。 使用UIVisualizer,您可以在監視視圖中獲取檢查器窗口,該窗口將啟動可視化工具。 在該鏈接中還討論了與UIVisualizer相關的GUID的使用。

想出這個。 您可以在https://github.com/chromium/vs-chromium查看源代碼

TL; DR - 涉及大量工作,我可能做錯了一些事情,並不容易。

我不是如何使用CustomVisualizer ,但可能使用LegacyAddin可視化LegacyAddin可以解決您的問題https://stackoverflow.com/a/11545420/61505

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM