![](/img/trans.png)
[英]Can I use Windows Identity Foundation 3.5 with .NET 4.5?
[英]Configure .NET to use 3.5 on Windows 7 and 4.5 on Windows 8
如何配置我的应用程序以在Windows 7和Windows 8上运行? 我的应用程序是用.net 3.5编写的,并且在Windows 7中工作正常,但是对于Windows 8,应用程序要求打开.net 3.5功能。 这是因为Windows8默认具有.net Framework 4.5。 所以我的问题是如何配置我的应用程序以在Windows 8中使用.net 4.5,在Windows 7中使用.net 3.5?
谢谢,
你不能
您的应用程序必须针对一个.NET框架,您不能针对多个框架。 我建议您以.NET 4为目标,因为它广泛安装在Windows 7上,带有4.5的Windows 8可以运行.NET 4的应用程序构建,并且从.NET 3.5升级到.NET 4效果很好。
只需确保以.NET 4 客户端配置文件为目标,因为Windows计算机上默认未安装完整的.NET 4。
编辑:有关将代码从.NET 3.5升级到.NET 4的更多信息(我只是在几周前才这样做,所以我知道会发生什么问题)。
除非您的代码使用服务器端组件(即System.Web),这些组件不包括在.NET 4客户端配置文件中,并且需要完整的.NET 4(默认情况下未在最终用户win7 PC上安装), 否则这样做会很容易。 )。
只需将项目切换到.NET 4客户端配置文件,然后检查其是否已编译。 如果可以编译,则表示它不使用任何服务器端组件。
点击此链接:
参考:
安装.NET Framework 3.5
当您安装Windows 8时,默认情况下会安装.NET Framework 4.5版。 但是,较旧的应用程序通常需要.NET Framework的早期版本。 如果收到与.NET Framework相关的错误,则可以进入“控制面板”,单击“程序”,然后选择打开或关闭Windows功能的选项。 Windows将显示可以启用或禁用的各种组件的列表。 列表中的一项是.NET Framework 3.5,其中还包括.NET 3.0和2.0。 安装此组件可能会纠正您遇到的问题。
在那里面。
可能的情况可能是:
最好的解决方案可能是将其构建在3.5中,并且仅让Windows 8用户安装.NET 3.5,他们可能仍然需要更多的应用程序。 程序启动时没有决定使用.NET 4.0或.NET 3.5的事情。 (或者,您可以制作某种类型的dropper,以便在运行时使用codedom编译二进制文件。)
by default so you can change the runtime by using following code Windows 8默认情况下具有 ,因此您可以使用以下代码来更改运行时
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true" />
</runtime>
在 version. 版本。 我认为这会起作用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.