小文件在本地驱动器上打开和保存的速度非常慢

小文件在本地驱动器上打开和保存的速度非常慢

过去 3 周以来,我在 [非常快] 的 PC 上通过文件->打开打开的任何文件都极其缓慢。这包括(但我确信不限于):

  • Windows 记事本
  • 记事本++
  • 视觉工作室
  • Adobe Photoshop
  • 微软 Word

奇怪的是:如果我在文件资源管理器中双击打开文件,或者在任何应用程序中通过“最近文件列表”打开文件,它会立即打开。只有在任何应用程序中执行“文件”->“打开”时才会出现速度缓慢的情况。

第一次保存也很慢。后续保存(在同一个应用程序会话中)非常快。

打开其中任何一个小文件都需要大约 7 秒钟的时间。

但正如下文更详细描述的那样,在打开文件后,在同一会话中关闭文件,它会立即再次打开。并且保存速度慢只会发生在第一次保存时,而不会发生在后续保存时。

该问题可能与一些事件同时发生,但也可能完全不相关:

  • 安装新的 M.2 SSD PCIe 驱动器,该驱动器被广泛认为速度极快。我克隆了较慢的 SSD 驱动器,并将这个新的(较快的)SSD 驱动器设为主/启动/C 驱动器。那是几周前的事了。今天早上我(暂时)恢复到我的旧 SSD(克隆后),但没有任何变化。问题仍然存在。(我甚至移除了新的 M.2 驱动器,启动到旧驱动器,但没有任何变化。)
  • 我将Windows 10升级到了2004版本。
  • 我启用了适用于 Linux 的 Windows 子系统(Ubuntu 20.04)

我发现过类似的帖子,但总是有更易于理解的情况:

以下是一些比较和详细信息:

  • 在同一会话中第一次打开时很慢。保存很慢,仅限第一次保存。Adobe Photoshop 中甚至也会出现保存缓慢的情况,但仅限于第一次保存。
  • Windows Defender 防火墙正在运行,但实时保护已关闭,并且我没有运行任何其他 AV。
  • 在给定的 NPP 会话中,如果我关闭文件然后重新打开它,它会立即打开。但是如果我关闭 NPP,重新启动,然后再次打开同一个文件 - 则需要 7 秒钟。Windows 记事本和其他文本编辑器中的情况类似。
  • 当我从“最近文件”列表中打开 NPP 文件时,所有文件都会立即打开。只有当我从“文件”->“打开”打开文件时,速度才会变慢。
  • 如果我关闭 NPP 并重新启动它,则默认情况下,上一个会话中打开的任何文件都会重新打开,而且是即时的 - 没有延迟。只有当我在新的会话中手动打开文件时,才会出现缓慢的情况。这很奇怪:我可以在 NPP 中打开 15 个文件并关闭应用程序。然后,当我重新启动 NPP 时,所有 15 个文件都会在 15 个不同的选项卡中立即/自动打开。但是,只要我执行文件 -> 打开并打开一个尚未打开的文件,就会花 7 秒钟,而且就像整个操作系统都挂起了一样。
  • 我卸载了所有 NPP 插件并重新启动 - 仍然需要 7 秒才能打开小文本文件。
  • 我已重启过电脑好几次了。
  • chkdsk在文本文件所在的驱动器上运行,没有坏扇区。
  • 我运行了procmon,得到了结果,但不知道在数千个条目中我在寻找什么。
  • 我运行了wpr- 它成功开始了录音会话,但是当我使用-stop+ 文件名 再次运行它时,出现错误cannot change thread mode after it is set
  • 我卸载了 NPP 并重新安装。大约 1 天后,问题解决了,文件可以立即打开。但第二天,原来的问题又出现了。
  • 我按照 Bob Denton 的以下建议对我的所有驱动器进行了优化 - 但没有什么区别。
  • 我做了clean boot(禁用所有非 MS 服务) - 没有变化。
  • 我将启动顺序切换到原始 SSD 驱动器,关闭,物理移除全新的 M.2 SSD,然后重新启动。同样的问题。没有区别。所以它与这个新驱动器无关。我能想到的最后一个罪魁祸首是 Windows 2004 更新——过去几个月没有发生其他重大变化。

这太烦人了。有什么想法吗?

答案1

根据我的经验,Windows 在报告磁盘硬件错误方面相当出色。因此,我要做的第一件事就是打开事件查看器,转到Windows Logs -> System并仔细滚动浏览至少几天前的事件列表,查看每个错误。如果文件所在的磁盘存在硬件问题,则很有可能会在那里发现它们。

第二件值得一试的事情是禁用病毒扫描程序(仅短暂测试)。我曾经遇到过类似的问题,结果发现问题出在 Windows Defender 本身。你给人的印象是高级用户,所以你肯定没有安装两个或更多病毒扫描程序,对吧?

我要尝试的第三件事是将一些有问题的(文本)文件移到新的 SSD 上,然后从那里开始处理它们。如果打开/保存所需的时间正常,那么问题就出在旧的 SSD 上。

在进行该测试时,您应该移除所有其他 HDD 和 SSD:如上面的一条评论所述,Windows 文件打开对话框可能会查询系统中的所有驱动器,尽管您没有从其他驱动器打开文件,但这可能会延迟事情。

在设备管理器和能源管理选项中,您可以检查驱动器是否始终处于活动状态或是否要休眠。如果是后者,您可以禁用该行为并测试情况是否发生变化。

最后,您的系统最终感染了病毒;正常操作的极端延迟将是病毒的典型迹象。但我实际上不相信您的情况如此,因为(如果我没记错的话)启动时间正常,并且只要文件被缓存,打开文件也是正常的。但是,出于谨慎,我会从干净的只读介质启动并检查系统上是否有任何可疑的东西。

更新(作为对 OP 评论的回答)

您在下面的评论中写道:

当我双击任何文本文件时,它会立即打开。但通过应用程序打开时速度非常慢。

我将一些文本文件移动到了我的 [据称速度很快的] C 盘,打开它所需的时间与我的其他驱动器相同。

这两种说法都支持这样的理论:标准 Windows 文件打开对话框(应用程序几乎总是使用该对话框让用户选择文件)在查询驱动器时存在问题。

因此,我现在建议删除所有驱动器(包括网络驱动器和 USB 密钥!)从系统中移除系统驱动器并重新测试。这样问题就很有可能消失。然后,您可以开始逐个重新添加其他驱动器,并确定哪个驱动器导致了错误行为。

当然,您应该从网络驱动器开始,因为这不需要打开 PC。关于网络驱动器,删除共享的驱动器号可能还不够;相反,删除驱动器号,停用网络硬件并拔出网线。然后检查您的应用程序的 MRU(最近使用)列表中是否有非本地文件(即网络上的文件)。如果可能,请删除 MRU。您需要确保应用程序在从该应用程序内部打开文件时不会尝试从网络搜索或预加载某些内容。

如果这没有帮助,请继续移除物理驱动器(USB 密钥、HDD、SSD)。

答案2

我个人认为这是以下两种情况之一:

  1. 该应用程序已安装在您的 SSD 上,但 Notepad++ 似乎正在等待我的其他驱动器(即常规 HDD)启动后再启动。

或者

  1. 您的网络上有一些最近的文件历史记录

对于修复 1,您需要执行以下操作(注意:如果这不适用于您,因为您仅安装了 SSD,那么请跳过此修复):

找出您是否正在从另一个磁盘加载数据的简单方法是查看您的 config.xml 文件(C:\Users%USERPROFILE%\AppData\Roaming\Notepad++)或者更好的方法是在该目录的文件中查找并搜索不同的驱动器号,如 D:\ 或 E:\

对于第二个修复,它将是:

查看 config.xml 并删除那些行,保存 .xml,然后打开 Notepad++,速度应该会恢复正常

答案3

我们是在瞎猜,所以我只能猜测。我建议你逐步缩小问题范围。这肯定会浪费你宝贵的时间,但最终可能会有所收获。

如果您怀疑罪魁祸首可能是新磁盘,请尝试以各种方式将其移出。操作系统也可能有一定作用。尝试:

  1. 使用 Live Linux,例如 USB(相对较快)。
  2. 使用旧磁盘(如果您还拥有它,则相对较快)。
  3. 在同一磁盘中设置另一个可启动分区(Linux/Win)(需要更长时间)。
  4. 在 Win 10 下设置虚拟机(例如 VirtualBox)。

编辑:一般建议这些问题还远远没有被理解我的经验(其中包括多年来处理 PC 硬件/软件安装和设置的经验)表明您必须从一个可以正常工作的系统开始,然后逐渐整合无法正常工作的系统组件。您正在以相反的方式工作。

扩展上面的列表:

  1. 在其中一个磁盘上腾出一些空间并安装新的 Windows(最好)或 Ubuntu 操作系统。如果您认为如果性能良好,这可能会成为您的基本操作系统,请在磁盘开头执行此操作,以便您以后可以扩展分区以占用整个磁盘。YMMV,取决于您想要的最终配置等。

答案4

Notepad++ 是否允许通过防火墙进入 WWW?

以前在使用 Mail Marshall 网络流量控制器在应用程序服务器上安装时我注意到了类似的事情,NP++ 在打开时会尝试与外界通信,如果连接被阻止,则需要多花几秒钟才能启动。

相关内容