Delphi:检查文件是否正在使用中

Art*_*hur 8 delphi file handle

我想写/删除文件,但有时如果该文件被另一个程序使用,我会崩溃.如何检查文件是否由其他进程打开,或者我可以打开它进行写入?

Bin*_*ier 31

问题是,在您检查是否可以获得独占访问权限和打开文件之间,还有其他东西可以获得对文件的独占访问权限,并且无论如何都会获得异常.

查看是否可以获取文件的独占锁定的唯一简单方法是尝试获取文件的独占锁定,如果你得到它,你就拥有它.

如果没有,您将捕获异常,并且

  • 去做别的事
  • 稍等片刻再试一次

这是生活中的一种情况,要求宽恕比允许更好:)

  • +1,我很乐意经常投票.这整个"检查某些东西,然后相应地采取行动"似乎要么是旧的DOS(或其他单任务)时代的残余,要么只是程序员喜欢认为他们的程序在计算机上是独一无二的...... (2认同)