如何配置我的应用程序以在 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 的更多信息(几周前我不得不这样做,所以我知道会发生什么样的问题)。除非您的代码使用不包含在 .NET 4 客户端配置文件中的服务器端组件(即 System.Web)并且需要完整的 .NET 4(默认情况下未安装在最终用户的 win7 PC 上),否则
这样做会很容易)。
只需将您的项目切换到 .NET 4 客户端配置文件并检查它是否已编译。如果它被编译,则意味着它不使用任何服务器端组件。
可能的事情可能是:
最好的解决方案可能是在 3.5 中构建它,然后让 Windows 8 用户安装 .NET 3.5,他们可能无论如何都需要它来获得更多应用程序。程序在启动时不会决定使用 .NET 4.0 或 .NET 3.5。(或者你制作了某种 dropper,它在运行时用 codedom 编译二进制文件。)
Windows 8 默认具有CLR 版本 4,因此您可以使用以下代码更改运行时
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true" />
</runtime>
在配置部分下。这将更改您的 CLR版本。我认为这会奏效。
按照这个链接:
参考 :
安装 .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。安装此组件可能会纠正您遇到的问题。
在那里面。