2012-11-03 130 views
8

我们最近迁移到VS 2012,但我们需要继续使用.NET 4.0。我们很大一部分客户群仍在使用XP,Windows XP不支持.NET 4.5。需要目标.NET 4.0,但需要.NET 4.5

现在,解决方案中的所有项目都针对.NET 4.0或更低版本。当我们运行该应用程序时,它告诉我们安装.NET 4.5 Framework,而仅使用.NET 4.0?

在生成的配置文件我看到:

<startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> 
</startup> 

如果我改变Version=v4.5Version=v4.0手动在配置文件中,一切工作正常,我们可以运行应用程序,但它似乎不可思议不得不这样做?有人可以向我解释什么是导致解决方案要求4.5而我们开发4.0?

+2

这可能有助于[link](http://www.hanselman.com/blog/NETVersioningAndMultiTargetingNET45IsAnInplaceUpgradeToNET40.aspx) – Mihai

+1

它有帮助,但是让我感到有点难过..... – Enrico

+0

您是否在安装程序项目中拥有4.5作为先决条件? – iivel

回答

5

当您使用Visual Studio 2012创建.NET Framework 4.5项目时,此XML内容会自动在app.config文件中创建。当您将项目重新定位到.NET Framework 4时,这些条目也会在app.config中恢复文件。它看起来像你的app.config条目由于某种原因未被还原。 可以手动编辑文件(如你所做的那样)。您的项目不再需要.NET Framework 4.5。

相关问题