[visual-studio]降级.NET framework 4.5 至 4 视觉studio 2012 年 c + + CLR 支持 DLL 项目吗?

标签: Visual-Studio dll
发布时间: 2014/3/1 3:16:10
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我添加的 c + + CLR DLL 与 4.5.NET 框架的引用链接一个 Visual C#.NET 框架 4.0 支持项目时出现此错误。

error CS0246: The type or namespace name 'project' could not be found (are you missing a using directive or an assembly reference?)

因此,如何降级.NET 框架 4.5 到 4.0 为此 c + + CLR 的 Visual Studio 2012 年支持 DLL 项目?

我看这之前,是造成的原因。我 c + +,此链接可能会帮我的事业http://msdn.microsoft.com/en-us/library/bb772098(v=vs.90).aspx

我只被发现此警告,以及:

 C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1578,5): warning MSB3274: The primary reference "X" could not be resolved because it was built against the ".NETFramework,Version=v4.5" framework. This is a higher version than the currently targeted framework ".NETFramework,Version=v4.0". 

任何人都见过啊?所以如何降级 c + + DLL?

谢谢你

解决方法 1:

C + + IDE 不支持.NET 项目多目标。您需要手动编辑.vcxproj。如果您有它打开,然后在文本编辑器中打开.vcxproj 关闭该项目。找到这行:

<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>

并修改它的"v4.0"。在 VS 中再次打开该项目。项目 + 属性、 共同的属性、 框架和引用。在列表中选择"系统",并检查相对路径属性。现在,它应该指向到 4.0 版本。

一定要提防的一个重大问题,c + + IDE 不支持多目标的核心原因。有一个问题与#using 指令,它将程序集加载从 c:\windows\microsoft.net 子目录。这将让它加载.NET 4.5 程序集而不是你想要当你的目标 4.0 4.0 大会。4.0 的引用程序集存储在 c:\program files\reference 程序集。这可以导致的原因非常难于诊断运行时问题,4.5 程序集不是那兼容 4.0 的程序集。很容易避免在您自己的代码中的 #using,但它在 include/msclr/marshal.h 和 include/vcclr.h 头文件中使用。如果您使用这些头买者自负。

赞助商