在过去的几个月里,我们在工作中遇到过几次奇怪的情况。重启电脑后,一些最新保存的文件变得全是空值。大小正确,修改时间正确,但整个文件从头到尾都是“0”。
- 这件事在几台类似的计算机上也发生过。
- 所有计算机均运行 Windows 7 Embedded。
- 所有计算机都具有基于文件的写入过滤器,但它在保存损坏文件的驱动器上未处于活动状态(在某些情况下:它根本没有活动)。
- 它发生在不同类型的硬盘上(SSD 和非 SSD)。文件系统为 NTFS,大小在 250 到 500 GB 之间。
- 除了硬盘之外,所有计算机的硬件基本相同,包括英特尔 C600/X79 系列芯片组 6 端口 sata achi 控制器。
- 在一种情况下,我们的应用程序重写了批处理文件,之后(重新启动之前)Windows 启动了它并且它运行正常。2 分钟后,我们重新启动了计算机 - 文件中充满了空值。
- 重启从未发生在文件写入过程中。显然是在文件保存并正确关闭后发生的(尽管所有重启都可能来自电源开关,而不是来自正常关机过程)。
- 这种情况很少见。我们找不到按需求实现的方法。在过去的 6 个月里,这种情况发生在我们大约 4 台计算机/硬盘上约 10 次。
我们该如何处理这个恼人的错误?
谢谢。
答案1
禁用这些驱动器上的写入缓存(Windows 7 磁盘策略)。但最好使用正常关机。