我的类型定义为:
typedef unsigned short StringChecksum;
Run Code Online (Sandbox Code Playgroud)
我最终打算使用NatVis在我们加载到内存中的全局字符串表中显示相应的值.
所以我已经定义了一个新的NatVis进行测试(这是我第一次):
<?xml version="1.0" encoding="utf-8" ?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<Type Name="StringChecksum">
<DisplayString>StringChecksum {this}</DisplayString>
</Type>
</AutoVisualizer>
Run Code Online (Sandbox Code Playgroud)
我已经在注册表中启用了NatVis调试,我可以看到调试器正在加载我的.natvis文件并成功解析.
我也关闭了编辑并继续.
但是,当我调试代码并检查StringChecksum时,我没有看到任何差异,它显示整数.我希望它能显示类似"StringChecksum 3433"的内容.
NatVis是否可以使用普通typedef定义的类型?我见过的所有例子都在使用类.如果是这样,任何想法可能是错的?
我按照一篇非常有用的文章编写你的第一个Visual Studio语言服务的指示,为我的软件工作室的内部脚本语言编写了一个新的Visual Studio语言服务.我的语法很棒,一些简单的goto案例正在运行,还有文本着色.我已经在Irony GrammarExplorer和Visual Studio Experimental Hive中完成了我的测试,我觉得我已经准备好在visual studio中正常使用它并将其部署到其他一些程序员那里进行早期测试和反馈.
问题是我不知道如何安装语言服务.我有这个漂亮的小DLL,可以在Experimental Hive中运行,但是无论如何在我启动visual studio时都能运行它.我在互联网上看了一眼,发现在我看的每个地方都有特别的步骤.也许我只是盲目,或者比我想象的要容易得多,但如果有人能给我详细介绍如何安装我的语言服务,我真的很感激.
提前致谢!