我有双启动设置(Ubuntu-Linux 和Windows-7 专业版 64 位) 在我的笔记本电脑上。我大部分时间都在 Ubuntu 上工作,但偶尔也需要使用 Windows。几天前,我过了一段时间才启动 Windows,检查更新,发现有很多新更新(超过 2GB!)。为了完成更新过程,我不得不重新启动,之后出现了很多问题!
我无法运行许多基本程序,例如 IE 和侧边栏!错误是缺少 DLL,如以下截图所示:
我将我的“System32”文件夹与另一个正常安装的 Windows-7 (32 位)进行了比较,确认缺少几个 DLL(例如:、、、、api-ms-win-downlevel-advapi32-l1-1-0.dll
... )。我尚未检查所有 DLL,因此我不知道还有多少其他 DLL 也丢失了。api-ms-win-downlevel-ole32-l1-1-0.dll
api-ms-win-downlevel-user32-l1-1-0.dll
api-ms-win-downlevel-shell32-l1-1-0.dll
过去三天我一直在网上搜索,试图找到解决方案。似乎很多人都遇到过同样的问题,但不幸的是,我没有找到任何可行的解决方案。最推荐的解决方案是运行系统文件检查器 (SFC) 扫描 ( sfc /scannow
),我照做了,SFC 报告说有一些损坏的系统文件,但无法修复!
在一个Microsoft 知识库文章我读到,在这种情况下,必须尝试根据扫描输出日志 ( ) 手动修复损坏的文件CBS.log
。在搜索如何执行此操作时,我发现这个答案,其中指出如此大量损坏的系统文件只能使用“就地升级”或“修复安装”来修复。
一个问题是,我的 Windows 7 是笔记本电脑预装的 OEM 安装。我不知道“就地升级”或“修复安装”是否会破坏我的正版 Windows 激活状态?!
那么,有人知道这个问题的解决方案吗?是使用可信赖的工具,还是指导我根据 SFC 输出日志 (
CBS.log
) 手动进行修复?如果没有,有人可以针对我对在 OEM 安装的 Windows-7 上执行“就地升级”或“修复安装”的担忧提供反馈吗?
答案1
我离开后遇到了同样的问题,我的系统安装了一些 Windows 更新(我认为这导致了这个问题)。
为了解决这个问题,我去了另一台 64 位 Windows 7 计算机,并将 api-ms-windows-downlevel-*.dll 文件从 /Windows/System32 复制到我自己的 /Windows/System32 目录中。(您可能必须在安全模式下执行此操作,否则文件正在使用中。)
答案2
最好的办法可能是备份所有重要文件,然后运行笔记本电脑的恢复分区来修复操作系统。由于它是 OEM 映像,它会格式化您的硬盘,但它将被正确激活并且是正版。
如果您选择就地升级,则必须使用笔记本电脑产品密钥贴纸上的产品密钥进行安装,然后按照说明通过电话重新激活(准备在电话中输入一长串数字,然后听到一长串数字以激活操作系统)