繁体   English   中英

Natvis用于可能被编译为dll或lib的类型

[英]Natvis for a type that may be compiled into dll or lib

我在Visual Studio中有一个解决方案,该解决方案的一种配置允许将每个项目静态链接到主exe,另一种配置将每个项目编译为自己的dll。

我的想法是可以使用DLL进行开发,从而最大程度地减少了编译和链接期间的停机时间,但是当我发布给公众时,只有一个exe。

不幸的是,这意味着在这些项目之一中创建的类型似乎需要2个natvis文件,以便可以在任一配置中对其进行调试。

除myProject.dll之外,这两个natvis文件完全相同! 前缀应用于natvis中dll配置的所有名称空间。 (运行静态链接的exe时,包含对dll中类型引用的natvis失败,导致整个文件被忽略,而不仅仅是该类型)

对这种情况的最佳解决方案是仅为每种类型维护2个natvis文件吗? 是否可以从模板生成natvis? 是否可以使对dll的引用为可选?

(我正在使用Visual Studio 2015,但请让我知道2017+是否为此提供了解决方案)

谢谢

我正在使用Microsoft Visual Studio Community 2017版本15.6.2,它对我有用,并且具有单个.natvis类型decl。 我的共享项目中有.natvis和头文件,共享项目的实现.dll项目和应用程序的.exe项目都引用了该文件。 我只指定了简单的类型名称,没有Shared.dll! 前缀,它的工作原理。 我希望这有帮助。 =)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM