为什么 Windows 7 x64 Explorer.exe 会突然吞噬所有可用 RAM 并使我的系统运行缓慢?

为什么 Windows 7 x64 Explorer.exe 会突然吞噬所有可用 RAM 并使我的系统运行缓慢?

更新:已解决-请参阅下面的我的回答

经常,当我在 Windows 资源管理器窗口 (Explorer.exe,不要与 Internet Explorer 混淆) 中浏览文件夹时,我会突然听到硬盘开始抖动,系统变得没有响应。当我设法打开任务管理器 (Control-Alt-Delete -> 启动任务管理器) 时,我可以看到 Explorer.exe 正在使用快速增加的 RAM 量,从 1.5GB 增加到 2GB 甚至更多。如果我观察 RAM 数字几秒钟,Explorer.exe 将增加到大约 4GB,然后归零并重新开始。在此期间,我的硬盘一直在抖动,我无法使用计算机做任何事情。我设法通过终止 Explorer.exe 进程,然后使用任务管理器的运行...命令重新启动 Explorer.exe 来恢复正常。这些事件使我的系统无法使用 3 到 5 分钟。

有人告诉我这是虚拟内存问题。我的虚拟内存设置没问题——它们被设置为自动。我的所有硬盘上都有大约 10% 的可用空间。

我使用 sfc /scannow 测试了系统文件,没有发现问题。

我使用 Windows 内存诊断程序测试了我的 RAM,没有发现任何问题。

我注意到这个问题特别出现在浏览文档库中的文件夹时。几乎每次我浏览常用文件夹时都会发生这种情况,尤其是当我快速浏览文件夹时。当我尝试打开 Word 文件时,这种情况经常发生。

系统会“崩溃”,通常持续 2 到 3 分钟。当我看到系统运行时的 RAM 使用率时,它已经达到 98% 甚至更高。

一个可能的复杂情况是我将文档库位置移动到了不同的磁盘(F:),而不是安装 Windows 的同一磁盘(C:),但这应该不是问题。

有任何想法吗?

2011 年 9 月 10 日新详情:

我现在在两台不同的 Windows 7 x64 计算机上遇到了这个问题。两台计算机上都出现了完全相同的问题,explorer.exe 占用了所有可用内存,导致系统运行缓慢。我认为以下步骤会触发此问题。

1) 导航到与 Windows Live Mesh 2011 同步的文件夹,该文件夹包含至少两个 Word 文档文件。

2) 单击(不要双击)其中一个 Word 文档文件。然后单击另一个 Word 文档文件。重复此操作几次。

3) 执行文件操作。(删除、复制或打开其中一个 Word 文件。)

4) 系统似乎会暂时变慢或“冻结”。如果您查看任务管理器,会发现 RAM 的使用率高达 99% 甚至 100%。explorer.exe 进程将使用快速增加的 RAM 量。

我比以往任何时候都更加确信 Windows Live Mesh 2011 是罪魁祸首。我将卸载此程序并重新测试两个系统,然后用更多信息更新此问题。如果您有任何进一步的见解,请提供帮助。谢谢。

根据 Superuser 的出色建议,我进行了大量故障排除。目前,我已经缓解了这个问题,但仍然没有消除它。清除 Windows 缩略图缓存后,我上面描述的 RAM 峰值和硬盘抖动仍然会发生,但现在攻击持续时间只有大约 5 或 10 秒(而不是 3 或 5 分钟)。另一个有帮助的步骤是在 Explorer 的文件夹选项的“查看”选项卡上选择“在单独的进程中启动文件夹窗口”。这隔离了有问题的窗口,因此当我需要终止 explorer.exe 时,我的任务栏和桌面通常不会受到影响。

答案1

尝试运行进程监控或者进程探索器并捕捉“正常”操作期间以及速度似乎变慢时发生的情况。这是排除故障的一种方法。

您也可以尝试卸载 Live Mesh,看看是否有效果。

答案2

尝试清除缩略图缓存,使用磁盘清理来执行此操作。

此外,如果某些文件夹中有图像或视频文件,而 Windows 由于没有所需的编解码器而无法为其生成缩略图,则可能会导致 Explorer 出现问题、速度变慢甚至崩溃。

如果您可以找到包含 Windows 无法生成缩略图的文件的文件夹,请将该文件夹的视图设置更改为“详细信息”之类的设置,这样它就不会尝试生成缩略图。

如果它们是 MKV 视频文件请参阅此主题

答案3

该问题源于 explorer.exe 在尝试显示 Word 2007 文件的文件图像预览(缩略图)时发生内存泄漏。

我通过阻止 explorer.exe 显示这些文件图像预览解决了该问题。为此,我编辑了 Windows 注册表。

编辑注册表时要小心 - 如果你犯了一个错误,它可能会损坏你的计算机。始终先备份你的注册表,方法是按照这些说明

要编辑注册表:

  1. 单击“开始”,然后键入“regedit.exe”。将出现 Regedit.exe 的快捷方式。
  2. 右键单击 Regedit 的快捷方式,然后选择“以管理员身份运行”。如有必要,请提供凭据。
  3. 在 Regedit 中,通过左侧列出的文件夹导航到以下位置:

HKEY_CLASSES_ROOT.dotx\ShellEx{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}

  1. 单击“默认”一词,确认列出的值为:“{C41662BB-1FA0-4CE0-8DC5-9B7F8279FF97}”。(如果您看到不同的值,请重复上一步,确保您位于注册表中的正确位置)。

  2. 然后按下键盘上的“Delete”键。确认删除。

  3. 对以下位置重复步骤 3 和 4:

    HKEY_LOCAL_MACHINE\SOFTWARE\Classes.docx\ShellEx{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}

    “默认”值:“{C41662BB-1FA0-4CE0-8DC5-9B7F8279FF97}”

有更多信息这里

答案4

除非底层存在不稳定因素,shell 扩展是罪魁祸首

使用ShellEx查看器要禁用那些不是由 Microsoft 提供的,您可以尝试重新添加您想要的...

相关内容