[英]Compile Managed C++ Assembly Against Specific .NET Version (VS2008)
我的托管C ++程序集遇到了一个奇怪的问题。 即使我将C#项目和托管C ++(DLL)项目设置为目标.NET 3.5,当我编译托管程序集时,其“运行时版本”也为2.0。
我试图在.NET 3.5项目和.NET 4.0版本的CSScript中使用相同的程序集,而CSScript拒绝与.NET 2.0程序集一起运行(“运行时例外:混合模式程序集是针对版本'v2构建的。运行时间为0.50727',并且在没有其他配置信息的情况下无法在4.0运行时中加载。”)。
我设法将问题本地化为以下内容(所有工作均在VS 2008中完成):
当您查看C#项目中引用的属性时,您将看到“运行时版本”为v2.0.50727。 我的问题是,到底是什么?
为什么运行时版本为2.0? 我将所有内容都设置为3.5 ...如何强制托管C ++项目针对.NET 3.5进行编译?
谢谢,Marek
运行时版本是指虚拟机的版本,而不是.NET类库。 .NET 3.5与.NET 2.0在同一虚拟机上运行,因此您的参考资料显示了v2.0.50727。 如果要查看C ++项目是否实际针对框架的3.5版本,则应检查该项目中的各个库引用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.