【发布时间】:2012-02-06 16:25:09
【问题描述】:
我想通过将零写入文件的物理区域来制作文件清除器以完全删除文件。
文件可以分段存储在硬盘驱动器上,而不是始终存储在整个块中。
当我说物理区域时。我的意思是文件存储的物理部分,或者对我可以执行“写入零”的那些部分的任何引用。
在 C# 中更好。
【问题讨论】:
-
我很确定你不能单独使用 .NET 来做到这一点,你必须使用一些低级调用来做到这一点。
-
有什么理由要自己写这个吗?市场上已经有许多实用程序可以做到这一点。顺便说一句,仅在现有扇区上写入零并不能完全擦除文件 - 某些软件仍然能够检索(部分)数据。
-
无法从用户模式写入物理扇区,需要内核模式驱动程序
-
嗨,Roy,我检查了市场上的一些软件,发现它们并不好。你能告诉我们为什么写零不能很好地工作吗?你有什么建议?谢谢
-
文件系统旨在成为一种抽象。您不能在用户模式下执行此操作的原因是因为它从来没有必要。唯一需要这样做的是如果您正在编写一个驱动程序,而您一开始不会在 C# 中这样做。
标签: c# file delete-file erase drive