打开.NET 4.0项目时,出现Visual Studio 2010错误:“未安装项目目标框架”。

21

我正在使用一台开发机遇到了一个相当令人不安的问题,希望有人能给我建议。

我有一个大型的 Visual Studio 2010 VB 解决方案,针对 .NET Framework 4.0,这个解决方案在许多 Visual Studio 2010 安装中都可以打开和工作,但在其中一台电脑上不能。打开解决方案时显示的“错误”(更像是信息)如下:

项目目标框架未安装

VB 项目的目标框架是“.NETFramework,Version=v4.0”, 但此计算机上尚未安装该框架。您必须下载此框架才能打开和构建此项目。 要继续,请选择以下选项。

下面是完整的上下文截图:

http://img507.imageshack.us/i/errorlc.jpg/

我已经尝试过:

  1. 修复(没有解决问题),卸载并重新安装 Visual Studio(没有解决问题)
  2. 修复(没有解决问题),卸载并重新安装 .NET Framework 4.0(没有解决问题)

在步骤2之后重新尝试步骤1(没有解决问题)。

暂时解决方法是使用 .NET Framework 卸载工具从计算机中删除所有 .NET Framework 4.0 的痕迹(包括注册表),然后再次安装 .NET Framework 4.0。但是错误已经重新出现了。

我不确定这是否是某些 .NET Framework 4.0 文件损坏、Visual Studio 中的某些问题,还是仅仅是 Visual Studio 找不到 .NET Framework 4.0。(我找到了几个可能的“解释”,但没有解决这个问题。

这台机器正在运行 Windows 7 (64位)。

有关此问题的任何故障排除思路都将受到热烈欢迎!


我有同样的问题。Windows7 Pro x64 Visual Studio Pro 2010我已经像你一样卸载/重新安装/修复了。你自己解决了吗?史蒂夫 - user607237
我成功地解决了这个问题,通过用新的开发机器替换旧的。虽然不是完全解决问题,但它节省了很多时间,避免了反复卸载/重新安装/修复的麻烦。 - Mike Wilson
12个回答

7

安装必要的开发工具将解决此问题(如果您已经安装了框架运行时),对于较新版本的Visual Studio,在setup.exe下的个别组件中,可以选择相应的目标包以修改当前安装。 - VPraharsha

3

更新或重新安装相关框架。运行 Visual Studio 设置。点击恢复默认值。将找到所有已安装的框架并不修改或删除插件或许可证。甚至保留了我的设置。


2

我也遇到了同样的问题,尝试了这里提供的解决方法。

我进入属性页面选择了框架3.5,错误就不再出现了。虽然我的电脑上安装了4.0版本的问题,但是Visual Studio却无法找到它。但是因为我没有使用任何4.0特定功能,所以目前这种方法可以解决问题。如果我找到了4.0框架无法被检测到的原因,我会在这篇文章中更新相关修复方法。

编辑:

我不知道为什么会出现这个问题,但是在参考这个论坛的帮助后,我使用了这个实用工具来完全卸载VS2010和.NET Framework 4.0

然后我重新安装了它们,并且安装了Visual Studio 2010服务包1,现在一切都正常了!

希望对有需要的人有所帮助。


在我的情况下,我卸载了VS2010和SP1(违反建议)。我只重新安装了VS2010 SP1,现在看起来好像更好了。 - Bill Hoag

2
感谢您,Aris
我曾经想知道为什么我的VS 2010突然不再识别.NET4.0,直到我看到了您上面的帖子。
我正在处理一个vbs脚本,它应该引用系统变量%PROGRAMFILES%,但无论使用哪个(64位或(x86)),我都会进入Program Files (x86)文件夹。所以我发现在注册表中有ProgramFilesDirProgramFilesDir (x86)条目。
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion

这两个值("Program Files (x86)")具有相同的值,因此应适当更改非 x86 值。这就是导致我 VS 2010 出错的原因。将该设置回滚,现在 VS 没问题了,但仍然存在 vbs 问题。

希望这能对任何人有所帮助。


2
我通过使用原始安装程序修复我的VS2010安装来解决了这个问题。

2

我遇到了同样的问题。我的电脑有一个小型SSD驱动器,其中包含Windows系统,而用户配置文件和两个Program Files文件夹在另一块硬盘上。 我通过注意到即使我已经更改了有关Program Files文件夹位置的注册表条目,FW设置仍然将某些文件放在默认位置来解决这个问题。我将它们复制到正确的位置,最终我再次拥有了面向目标框架的FW 4.0。


1

Social MSDN上报告了类似的问题。不幸的解决方案是:

我通过以下步骤自己解决了这个问题:

a)因为我的问题是在Windows安全更新VS 2008后第一次出现的,所以我进行了系统恢复,以获取提到的Win-Update之前的状态

b)然后我卸载并重新安装了VS 2010(包括.NET Framework 4.0)

我只是发布这篇文章,因为我遇到了同样的错误。


1

请问您能否详细阐述一下您的答案,并对您提供的解决方案进行更多描述? - abarisone
如果这个能够运行,我会给你点赞的。这种错误真是让人沮丧。 - Terrance00

1

我成功解决了这个问题,通过用新的开发机器替换旧的。虽然不是完全解决问题,但它节省了很多时间,避免了反复卸载/重新安装/修复。


1
在其他地方我看到过: 在VS 2010中,<TargetFrameworkSubset>标签被改为<TargetFrameworkProfile>,我们不再支持"Full";这就是为什么你会收到错误信息。在我们修复此问题之前,你可以从项目文件中删除<TargetFrameworkSubset>标签,然后项目应该能够正常打开。
如果你的项目文件中没有指定TargetFrameworkProfile,那么在MPF(至少)中默认使用最新版本。可能会对是否已安装产生困惑。

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