更改已编译的可执行文件的.NET Framework目标

时间:2012-08-29 15:57:12

标签: .net visual-studio-2012 .net-4.5

由于Windows 8默认情况下不包含.NET 2 / 3.5,我想将一些.NET 2.0编译的可执行文件转换为.NET 4.5,而无需使用VS 2012重新编译它们。是否有用于此任务的实用程序?

3 个答案:

答案 0 :(得分:6)

您可以创建或修改app.config文件,并将supportedRuntime元素设置为4.5。这将导致4.0 CLR(将使用4.5框架)加载程序集,并且不需要对可执行文件本身进行任何更改。

答案 1 :(得分:3)

作为附加信息(Reed Copsey提供的解决方案),您可以拥有多个supportedRuntime元素,以支持未安装4.x的系统:

<configuration>
    <startup>
        <supportedRuntime version="v4.0" />
        <supportedRuntime version="v2.0.50727" />
    </startup>
...

这将使它在Windows 8或未安装.Net 4.x的早期版本中运行良好。

答案 2 :(得分:0)

我相信你不能这样做,因为这个attributte在程序集本身(TargetFramework)中得到支持,如果没有源代码,你可以做的就是反编译程序集并使用所需的.NET重新编译它。框架版本。