我从一开始就一直在使用CopyFileEx,它一直很好用。如果文件未锁定,则会复制该文件。如果文件被锁定,则不会,GetLastError将报告错误。一切都很好,花花公子。
但是,有些文件被部分锁定,PST Outlook文件就是最好的例子。在这种情况下,CopyFileEx开始复制,当它到达锁定的文件部分时,它将挂起并且永远不会返回(在Windows 7上,也可能在其他系统上)。
有没有办法避免这个问题?
答案 0 :(得分:2)
您可以自己进行复制,从致电LockFileEx
开始。如果它无法锁定您要求的内容,它会立即失败。
答案 1 :(得分:2)
有一种方法可以避免它,但没有简单的解决方案。 请参阅我的answer here。