我正在使用 ReadDirectoryChangesW 来监视一个文件夹,如果我将一个大文件复制到该文件夹,我可以收到多个 FILE_ACTION_MODIFIED 消息,似乎每次 Windows 写入一大块文件时,您都会收到每个文件修改的通知时间。我尝试使用 CreateFile API 检查文件是否可以通过 AP 打开,但有时,某些文件总是被其他 AP 锁定,例如,如果您打开 Outlook,PST 会更新,但我的 AP 可以无法访问它,我们必须启动卷影复制才能打开它。
所以我的问题是,如何知道文件复制完成?
这是一个非常hacky的解决方案,但在非常棘手的情况下,您可以运行轮询循环来检查文件的大小(或修改日期)。如果暂时没有变化的话可以somewhat安全地假设文件已完成复制。
EDIT:这不是一般情况下的最佳解决方案,但请考虑在 OP 的情况下,问题约束排除了更好的解决方案。在你考虑否决之前先考虑一下这一点。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)