我编写了一个小型 c++ 应用程序,它在 Windows 启动后在几个客户端上自动启动。此应用程序会将文件从网络共享(所有客户端的相同网络共享)复制到本地磁盘。当我一次重新启动所有客户端时,其中一些客户端将从 std::filesystem::copy 函数中收到错误 1231,并显示以下消息:
“无法访问网络位置”
如果我以几秒钟的间隔重新启动所有客户端,那么就没有问题。这让我觉得复制功能可能会在复制过程中阻止文件。
是否有一些我缺少的设置可以防止这种情况发生?这是正常行为吗?
编辑:我已经能够解决网络问题,但是我现在收到错误 32,指出“该进程无法访问该文件,因为它正在被另一个进程使用”。复制功能是否锁定当前正在复制的文件?