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

4

由于Windows 8默认不包含.NET 2/3.5,我想将一些使用.NET 2.0编译的可执行文件转换为.NET 4.5,而不需要使用VS 2012重新编译它们。是否有此类工具可供使用?

3个回答

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

1
@程序员,它需要是 YourApp.exe.config(app.Config 在部署过程中被重命名)。 - Reed Copsey

3
作为额外的信息(Reed Copsey提供的解决方案有效),您可以使用多个supportedRuntime元素来支持未安装4.x的系统:
<configuration>
    <startup>
        <supportedRuntime version="v4.0" />
        <supportedRuntime version="v2.0.50727" />
    </startup>
...

这将使它在未安装 .Net 4.x 的Windows 8或更早版本上顺利运行。


0

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接