针对.NET 4.5.2的目标包未安装。

65

在Visual Studio中打开已有的解决方案时,会显示以下内容:

C# 项目“...”的目标是“.NET Framework, Version=v4.5.2”,但该计算机上未安装该版本。

错误信息截图

我已经尝试过:


1
尽管框架已经存在,但我在VS 2022中基于.NET 4.5的项目中遇到了类似的问题。因此,我按照这个Q&A中被接受的答案进行了操作-https://dev59.com/jFEG5IYBdhLWcg3wOnSy但是,在另一台机器上,同样的解决方案没有帮助,所以我只是切换回了VS 2021。它完美地运行了。希望这能帮助到某些人! - kaarthick raman
8个回答

108

所有目标包的官方列表:https://www.microsoft.com/net/targeting。确保下载“开发人员包”,而不是“运行时”。

直接离线安装程序链接:4.5.24.64.6.14.6.24.74.7.14.7.2

此问题似乎影响Visual Studio 2013和Visual Studio 2015。目标包已包括在Visual Studio 2017中。

过时的链接:

我是如何找到该链接的

首先,选择选项1,“将目标更改为.NET Framework 4.5”。

接下来,进入受影响项目的项目选项,选择"应用程序",然后从目标框架列表中选择"安装其他框架...":

更改目标框架截图

这将带您前往一个网站,在该网站上您可以选择您的Visual Studio版本并下载所需的目标包(称为开发人员包)。

网站截图


4
+1,这很有帮助,谢谢。然而,只需要网页链接即可,不需要改变框架(如果您在一个解决方案中有多个项目,这会很麻烦)。 - Assimilater
5
@Assimilater: 在Stack Overflow上,仅提供链接作为答案是不被鼓励的。 - Thomas Weller
2
@Thomas:当链接包含实际可以包含在答案中的信息时,鼓励避免仅提供链接的回答。但在这种情况下,链接包含下载链接,并且您回答中提到的步骤是不必要的,因此我建议至少将链接放在此答案的顶部以使其更有帮助。话虽如此,似乎该链接已经失效,正确的下载链接现在应为http://getdotnet.azurewebsites.net/target-dotnet-platforms.html。 - vgru
1
这个回答对于VS2017仍然有效吗?我遇到了这个问题,但是微软表示这应该随VS2017捆绑安装。安装程序确认已安装开发人员包。 - tyteen4a03
1
抢救生命的程序员! - Alireza Jamali
显示剩余2条评论

20

我曾经遇到同样的问题。每次加载项目时都会要求安装 .NET framework 4.5.2,但我无法安装,因为它总是显示已经安装过了。

对我有效的方法是从 https://www.microsoft.com/en-us/download/details.aspx?id=42637 安装 Microsoft .NET Framework 4.5.2 开发人员包。

你可以试试看,说不定也能解决你的问题。


我错误地尝试安装了“运行时”版本,但它已经安装好了。我必须专门安装“开发人员包”。事后看来这一切都很有道理,但在阅读这个答案之前我确实感到困惑。 - DubiousPusher

10

我曾经遇到.NET 4.6.2 (VS2017)的问题- 我从错误消息提供的链接中下载了开发人员包并安装,但没有解决问题。

但是后来我打开了Windows控制面板中的程序和功能,并选择“更改”Visual Studio 2017。安装程序包含一个名为“Individual Components”的选项卡,在那里我看到4.6.2的目标包未被选中。

选择它们并选择“修改”即可解决问题。


与.NET 4.7相同的症状,相同的解决方法:打开“程序和功能”并选择“单独选项卡”,然后选择您需要的.NET版本。 - TomEberhard
这也适用于使用VS 2019并针对4.8.1的情况,尽管在VS Installer应用程序中,该组件列为“4.8”,而不是“4.8.1”。 - M Herbener

9

谢谢!当我尝试下载4.5.2框架时,它一直告诉我已经安装了它,但是我成功安装了开发人员包,并在这样做后能够选择4.5.2作为目标框架! - Levi Wallach

1

说句实话,在我安装了所需的开发人员包之后,我不得不重新启动Visual Studio才能被检测到。希望这能帮助到某些人。


1
我遇到了同样的问题,但下载.NETFramework Targeting Pack并没有解决问题。我被提示更改版本或下载正确的版本,但两个选项都没有起作用。我可以在注册表中、Visual Studio安装程序中和打开/关闭程序中看到.NET Framework,并验证它们存在。原来Visual Studio 2017 Community和2019 Community安装在c:Program Files中,所以它在这里查找框架文件。C:\Program Files\Reference Assemblies\Framework.NETFramework\v?????所有.NETFramework文件都加载到了C:\Program Files (x86)\Reference Assemblies\Framework.NETFramework\v?????中。一旦我将一个文件夹从x86复制到另一个文件夹中,它就可以正常工作并被识别,不再出现错误。我搜索过,但我发现最好的解决方案是从一个文件夹创建符号链接到另一个文件夹。我觉得复制不是一个好的长期解决方案,所以我使用mklink将x86文件夹链接到另一个文件夹。现在它完美地工作了!

1

我遇到了同样的问题。尽管安装了开发人员包,但问题似乎并没有消失。我进行了VS 2015修复,然后它开始正常工作。


-1

.NET框架与目标包不同。后者需要安装才能使Visual Studio正常工作。


1
欢迎来到StackOverflow并感谢您的帮助。您可以通过添加一些解释使您的答案更好。 - Kenzo_Gilead

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