我有一种情况,诚然很容易解决,我有一行代码如下:-
My.Computer.FileSystem.MoveFile(f_source, f_dest, True)
true 用于覆盖选项。
我在批量文件移动期间有一个实例,有时,只是有时,源文件被留下,但目标文件被成功复制。
它周围有错误捕获(VB.NET/try/catch),但没有触发错误。它似乎只发生在远程 (VPN) 访问期间,现场没有出现相同的操作。
我怀疑它是在某种缓冲区填充期间发生的,因为移动是往返于删除驱动器,这有点像循环。
此后,我在移动后添加了一个检查,以查看这两个文件是否存在,并在它们存在时删除源。我可以确认这已被触发,并且到目前为止,它已经解决了我的问题。
我没有使用任何后台或线程操作。我很惊讶控制权在未完成且没有错误的情况下交还给我的程序。这是一个已知问题吗?
我还没有测试过其他的 movefile 选项,当然,我总是可以先复制然后删除,所以这没什么大不了的,但它确实让我很着迷。