今天早上,我尝试在两台 Windows 7 PC(均为虚拟机)上运行 Windows 更新,结果弹出一个有趣的错误消息。我以前从未遇到过这个问题,因此我感到有些困惑。
从这条消息中,我首先想到的是看看 Windows 更新服务是否正在运行。它确实在运行。像往常一样,解决方案从来都不是那么简单。我尝试重新启动服务并重启电脑,但无济于事。
因此,我去网上寻找解决方案。我确实找到了解决方案,所以我想发布它以供将来参考,也供其他可能遇到此问题的人参考。我很快就会发布答案。
如果您有其他可行的解决方案,请随时发表评论或留言。
答案1
显然,问题出在损坏的 Windows 日志文件。
为了使 Window Update 再次运行,您必须:
- 转到服务,并暂时停止“Windows 更新”服务
- 去
c:\windows\softwaredistribution\datastore\logs\
- 查找文件
edb.log
- 重命名或删除文件
- 重命名或删除文件后,返回服务并启动“Windows Update”服务
- 尝试再次运行 Windows 更新。它将正常工作。
到目前为止,这个解决方案还没有给我带来任何问题。我已经成功地在其中一台电脑上安装了更新。
参考:
答案2
本质上与上面的答案相同,但在我看来稍微简单一些:
停止 services.msc 下的 Windows 更新服务(保持服务窗口打开)
去
C:\Windows
将文件夹重命名
SoftwareDistribution
为类似SoftwareDistribution_OLD
返回服务并启动 Windows 更新服务(这也会
SoftwareDistribution
自动创建一个新文件夹)等待几分钟然后重试!
如果有效并且你愿意,请继续删除该
SoftwareDistribution_OLD
文件夹,否则你可以恢复
这种方法对我有用过很多次。不过坦白说,我从来没有检查过 Windows 更新历史记录,看看它是否还知道安装了哪些更新以及何时安装的。不过,机器足够智能,可以知道你需要和不需要哪些更新。这是我的看法!
答案3
这是一个真正非技术性的修复,但它似乎对在使用 Windows 7 或 Vista 时遇到此问题的用户有效。
进入 Windows 更新设置,将其更改为“从不检查更新”。应用更改。
然后再次将设置更改为您喜欢的选项。我使用了“检查更新,但让我选择是否下载并安装它们”。应用此更改。
一旦我应用了第二个更改,更新过程就恢复正常。
答案4
在我遇到相同情况时,以下代码对我有帮助。在命令提示符中运行此命令:
regsvr32 wuapi.dll
regsvr32 wuaueng.dll
regsvr32 wups.dll
regsvr32 wups2.dll
regsvr32 wuwebv.dll
regsvr32 wucltux.dll
重新注册 DLL 有助于 Windows 7 环境。