首页 > 解决方案 > Windows 10 更新后的 .NET Framework 错误 - 文件丢失

问题描述

我有一个问题是在 Windows 更新之后开始的,尽管我进行了所有研究并且我多次尝试卸载/重新安装更新、恢复还原点和修复 .NET 框架,但我仍然无法解决。我希望这里有人可以提供帮助。

此计算机使用 Windows 10 Home 1903。Home 对更新的控制有限。.NET Framework 是集成的,即无法卸载(注意:我没有使用这台计算机进行开发工作)。

6 月 22 日,应用了两个更新 - KB4560960(Windows 10 版本 1903 的 2020-06 累积更新)和 KB4561600(Adobe Flash Player 安全更新) - 计算机重新启动。出现两个错误框,第一个标题为“Update.exe - .NET Framework 初始化错误”,文本为“要运行此应用程序,您首先必须安装以下 .NET Framework 版本之一:v4.0.30319 联系您的应用程序发布者获取有关获取适当版本的 .NET Framework 的说明。” 片刻之后,第二个出现,标题为“IAStorIcon.exe”,文本相同,但引用的是 v4.0。

在此处输入图像描述

Update.exe 框与任务栏上的 Microsoft Teams 图标相关联——但我从未安装过 Microsoft Teams,并且更新不包含该应用程序。

尝试返回在有问题的更新(KB4560960 和 KB4561600)之前创建的还原点,但运行 6 小时后,它无法替换 AppData 中的 Firefox 文件。尝试了很多方法来解决还原问题,但没有任何效果。跑了chkdsk和sfc里面没发现什么问题。

由于这些错误都与 .NET 有关,因此我专注于解决 .NET 问题。我注意到在 6 月 8 日,更新 KB4552931(.NET Framework 3.5 和 4.8 的累积更新)安装失败,错误代码为 0x80240017。我卸载了这个更新,重新启动并得到了相同的 2 个错误框。我从微软的网站下载了 KB4552931,运行它,重新启动,错误仍然存​​在。

我使用 Microsoft 网站上的 ndp48-web.exe 安装了 .NET Framework 4.8。它说“.NET Framework 4.8 或更高版本的更新已安装在这台计算机上”。这些错误抱怨 .NET 4.0x,所以我尝试安装 .NET 4.0,但正如预期的那样,得到“Microsoft .NET Framework 4 已经是该操作系统的一部分”和“相同或更高版本的 .NET Framework 4已经安装好了”。由于 .NET 没有出现在程序和功能中,我去“打开或关闭 Windows 功能”并选中“.NET 环境”、“.NET 扩展性 3.5”、“.NET 扩展性 4.8”和“ASP.NET 4.8”复选框”然后点击关闭——它说它已经完成了更改。当我重新打开功能对话框时,我选中的框不再被选中。我重新启动并出现了相同的 2 个错误框。

在网上寻找 .NET 修复的可能性。微软有修复工具、清理工具和验证工具,但它们只能升级到 4.7。我运行了没有效果的修复和清理工具(.NET Framework 修复工具:https ://www.microsoft.com/en-us/download/details.aspx?id=30135 ,.NET 清理工具:https ://docs.microsoft.com/en-us/archive/blogs/astebner/net-framework-cleanup-tool-users-guide )

.NET Framework 验证工具(来自https://docs.microsoft.com/en-us/archive/blogs/astebner/net-framework-setup-verification-tool-users-guide的netfx_setupverifier.exe )允许您选择您要验证的版本 - 下拉列表仅列出版本 2.0、3.0 和 3.5。

看到一篇关于如何确定 .NET 版本以及注册表中的内容的文章(https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-versions-are -安装)。文章显示了下面的图像,但我的注册表只显示了(默认)条目。

在此处输入图像描述

我验证了 InstallPath 中引用的路径存在于我的驱动器上。我将上面显示的所有条目添加到我的注册表中。发行版和版本实际上引用了 2019 年 11 月的更新,但安装的是 2020 年 5 月的更新并造成了问题。我再次卸载该更新并重新安装它 - 它没有对注册表进行任何更改并且错误继续存在。但是,验证工具 (netfx_setupverifier.exe) 现在在下拉列表中显示版本 2.0、3.0、3.5 以及 4.x 到 4.7 的每个版本。运行这个 4.7 和 4 Full 都失败了。日志文件说 C:\Windows\Microsoft.NET\Framework64\v4.0.30319 和 C:\WINDOWS\Microsoft.NET\assembly 中缺少许多文件。我找到了另一台 Windows 10 家庭计算机并比较了 C:\Windows\Microsoft.NET\Framework64\v4.0 中的文件。

在此处输入图像描述

所以我的注册表丢失了 4.0 信息,直到我手动添加它,但驱动器上的许多文件也丢失了。在 6/22 更新之前一切都很好(我也尝试卸载更新但无济于事,我可以撤消的更新有限)。

标签: .netwindows-10updates.net-framework-version

解决方案


推荐阅读