文件操作 - 复制和移动 - Delphi

6

我需要在Delphi中执行两个操作。

首先是读取目录并将所有文件复制到备份文件夹。如果任何文件当前正在被写入和/或打开使用,则跳过该文件。

其次是将文件移动到另一个目录。同样,如果任何文件当前正在被写入和/或打开使用,则跳过该文件。

我以前使用过文件复制和移动,但我不确定如何检测文件是否正在被写入和/或打开使用。

谢谢。

1个回答

8
如果你使用Windows.pas中的CopyFile(PChar(sFrom),PChar(sTo),false),当复制失败时它会返回false,并且GetLastError将返回一个解释失败原因的错误代码。

谢谢。我也有同样的想法,但想听听别人验证我的逻辑。 - t j
如果我删除最后一个参数(false),它对我有效,否则我会得到“参数过多”的错误。 - fnkr
这可能是因为您正在使用由SysUtils.pas定义的CopyFile,而不是Windows.pas。 - Stijn Sanders

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接