繁体   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