2

我有一个在网络服务器上运行的服务,该服务等待将 zip 放入文件夹中,将其解压缩,然后将其移动到某个目录。由于我们要替换有问题的目录,它重命名现有文件夹(非常大的文件夹,需要几分钟才能删除),然后将提取的文件移动到其位置,然后删除旧文件夹。问题是:当它尝试重命名现有文件夹时,它会得到“拒绝访问路径 '<>'。”,我相信是因为该文件夹一直被 web 服务使用。有没有办法强制文件夹重命名,或者控制并等待它不被使用?或者还有其他方法可以实现这个目标吗?

4

1 回答 1

0

当任何进程拥有文件夹的底层操作系统句柄时,您不能“强制”重命名(如果您能够这样做,那将是可怕的)。

你可以:

  • 为 web 服务实现暂停/恢复功能,以便它可以被告知暂停其工作并释放句柄,然后在完成后恢复。或者
  • 完全停止网络服务,做你的工作,然后启动网络服务
于 2012-11-05T16:35:33.640 回答