Mah*_*dsi 6 .net interop c++-cli .net-framework-version visual-studio-2012
我在Visual Studio 2012中创建了一个新的C++/CLI项目,并在项目创建页面上选择了.NET 2.0作为框架.我已验证"外部依赖项"(mscorlib.dll,System.Data.dll,System.dll和System.XML.dll)显示"路径" c:\Windows\Microsoft.NET\Framework\v2.0.50727\*.
在同一解决方案中从C#.NET 2.0项目添加对此项目的引用时,在构建时,编译器无法链接到我的C++库,并出现以下错误:
警告2无法解析主要参考"D:\ GIT\EasyBCD\Release\Win32Interop.dll",因为它对.NET Framework程序集具有间接依赖性"mscorlib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089"其当前目标框架中的版本"4.0.0.0"高于版本"2.0.0.0".C:\ Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.Targets 1578
但是,就像我说的那样,'Win32Interop'项目中的引用清楚地表明使用了v2.0,并且项目文件本身包含<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>它应该包含的内容.
为什么Visual Studio 2012给了我这么难的时间?
编辑
神秘感加深了.尝试删除所有,然后在C++/CLI项目中重新添加.NET引用时,显示如下:

如您所见,顶部显示"Targeting:.NET Framework 2.0"和"Version"列表示我选择版本"2.0.0.0".
但是,单击"确定"后,这就是引用列表的样子:

Targeted框架仍为".NETFramework,Version = v2.0",但各个引用均表示正在使用版本"4.0.0.0"(以及该版本文件的公钥标记).
然而,选择每个引用时的属性对话框绝对保持正在使用v2.0文件.谁相信?该怎么办?
似乎不支持创建.NET 2.0 CLR项目.这是Microsoft Connect上的链接:
| 归档时间: |
|
| 查看次数: |
3443 次 |
| 最近记录: |