【发布时间】:2011-06-07 11:42:42
【问题描述】:
我是一名 Delphi 程序员。 我想用虚拟文件填充存储设备的整个可用空间。 在此操作期间,我想防止 Windows 或其他程序在设备上写入。 我知道这是可行的,因为我见过可以做到这一点的程序。
我已经有了创建虚拟文件的代码(使用 TFileStream,在 NTFS 上非常快),所以我只需要某种锁定/解锁代码。
有人知道方法吗? 感谢您的任何建议。
如果整个程序能够更好地运行,我会接受甚至会改变我创建这些文件的方式的解决方案。
谢谢。
最好的问候,约翰。
【问题讨论】:
-
当您解锁设备时,如何阻止某人释放驱动器上的空间?
-
为什么需要锁定?为什么不直接写,直到系统报告磁盘空间不足错误?到那时你就知道你已经填满了。
-
“我知道这是可行的,因为我见过可以这样做的程序。” - 我不知道你似乎在问什么是可能的。你看到其他程序到底做了什么?
-
@David,当然,这是可能的,但是如果我不能做出完美的程序(没人能做到),那就意味着停止开发这个程序..?对于您的第二条评论:我已经回复了几次原因:主要原因是程序需要快速并尽量减少在棍子上的书写操作。 @ChrisW 例如,我使用了在操作前锁定驱动器的备份程序,即使它们编写简单的文件。
-
@ChrisW 好吧,我不能 100% 确定这在每种情况下都是“锁定”。但似乎是这样:我无法再访问驱动器了。有些程序甚至使用“锁”这个词。