如何使用原生可视化工具处理不同解决方案中的类似类名

时间:2017-11-17 15:12:47

标签: xml visual-studio natvis

在我的公司,我们正在使用本机可视化工具(.natvis文件)来调试Visual Studio中的内存转储。

由于我们为不同的项目提供了相同的类名,我们考虑在项目定义中包含.natvis文件,这似乎有效:.natvis文件嵌入到符号文件(* .pdb)中建立,这是一件好事。

不幸的是,现在似乎无法进行任何自定义:从.natvis文件(PC上的文件和符号文件中的文件)中,符号文件中的文件获得优先权,这使得它不可更改,因此无法自定义似乎已经有可能了。

为了拥有可自定义的.natvis文件,我们正在考虑更改.natvisreload序列。这是可能的还是有另一种方法(比如在.natvisreload命令中添加参数)?

1 个答案:

答案 0 :(得分:3)

我的问题似乎无法回答,正如我刚在电脑上找到的natvis架构中提到的那样:

  

属于已加载项目的natvis文件将始终采用   用户natvis目录中文件的优先级

似乎可以在同一个natvis文件中区分不同的解决方案(应用程序),如下所示:

  <!-- Solution1 -->
  <Type Name="Class_Name">
    <Version Name="Solution1.exe" Min="1.0" Max="99.99"/>
    <DisplayString>Class_Name Solution1 {m_strName}, {m_iID} </DisplayString>
  </Type>

  <!-- Solution2 -->
  <Type Name="Class_Name"> // in Solution2 Class_Name has no strName
    <Version Name="Solution2.exe" Min="1.0" Max="99.99"/>
    <DisplayString>Class_Name Solution2 identifier {m_iID}</DisplayString>
  </Type>