如何让.net应用程序在3.5或4.0/5上运行,而不要求用户安装目标框架

本文关键字:运行 框架 目标 安装 用户 应用程序 net | 更新日期: 2023-09-27 18:21:14

我有一个C#应用程序,目标框架是2.0。该应用程序在Windows 7和vista上运行良好,无需用户安装任何框架。

由于windows 8的出现,该应用程序不再运行。当它在普通版本的windows 8上运行时,操作系统会发出一条消息,说应用程序需要框架3.5,并要求他们安装它

我的假设是,既然Windows 8附带了框架4.5,它应该支持旧的api,为什么用户必须安装框架3.5?

我应该将我的申请目标更改为4.5吗?如果我这样做,该应用程序是否仍能在Windows7(香草版)上运行,而不要求用户使用4.5/4.0框架?

请注意,我希望该应用程序能够在多个框架上运行,至少3.5和4.0/5(在vista、windows 7和8上),而无需要求他们安装框架

感谢

如何让.net应用程序在3.5或4.0/5上运行,而不要求用户安装目标框架

Windows不是.NET框架的分发平台,这是微软的官方指导。Windows 7可能默认安装.NET 3.5,但这并不意味着它会存在(可以删除)。Windows 8和.NET 4.5也是如此,您需要提供带有应用程序安装程序的可再发行文件。就像编译C/C++应用程序时需要使用Visual C++一样。

也就是说,你可以强制3.5应用程序在4.0中运行,但我强烈建议不要这样做,除非你要对两者都进行广泛的QA。

如何强制.NET 3.5应用程序在.NET 4.5运行时上运行?