在互联网上(Microsoft website, e.g.),有很多关于如何创建可视化工具的信息。 但是,我只想知道,我的调试器目前使用哪个可视化工具?
对于Native代码,这个问题非常简单:
.natvisreload
但是,现在我正在使用托管代码,在我的观察窗口中,我看到如下条目:
{User Info: 12 User(s), 6 Group(s)
{VDX File Change Info (117 files)}
这些条目给我的印象是,对于这个托管代码,使用了/某些可视化器,我想自定义,扩展或修改它/它们,但因此我需要知道它/它们在哪里/是(对不好的句子,我只是想强调一点,我不知道可视化器的下落)。
如何知道在Visual Studio会话中使用了哪些托管可视化工具?
提前致谢 多米尼克
您必须与调试器集成,并在watch / autos / locals窗口中查看正在评估的类型。
从那里你可以在加载的模块列表中找到这些类型(使用调试器apis),然后搜索Leo提到的属性。
关于托管代码加载哪种类型的可视化工具,没有任何调试输出。它实际上存储在类型本身上。
如何知道在Visual Studio会话中使用了哪些托管可视化工具?
根据文件Create custom views of managed objects:
在C#和Visual Basic中,您可以使用DebuggerTypeProxyAttribute,DebuggerDisplayAttribute和DebuggerBrowsableAttribute为自定义数据添加扩展。
在.NET Framework 2.0代码中,Visual Basic不支持DebuggerBrowsable属性。在最新版本的.NET Framework中删除了此限制。
希望这可以帮助。