在服务器上运行时,无法从服务器上删除文件

本文关键字:服务器 删除 文件 运行时 | 更新日期: 2023-09-27 18:11:45

我所构建的控制台应用程序的一部分用于从我们使用的服务器上的目录中删除不需要的订单文件。当我在本地机器上运行这部分代码时,它工作得很好,但是当我们在服务器上运行它时(它将是一个计划任务),它不再删除文件。

try
{
    System.IO.File.Delete(@"''ServerName'ProductionFileShare'Orderfiles'FileDir'" + fileName);
}
catch (System.IO.IOException e)
{
    Console.WriteLine(e.Message);
    return;
}

文件名就是storeorder.txt。

正如我所说的,这在我的本地计算机上工作得很好,但是当我们从服务器本身运行这个程序时不会删除文件。什么好主意吗?

更新:异常消息是:进程无法访问文件''ServerName'ProductionFileShare'Orderfiles'FileDir'storeorder_07062014_16-25 .txt',因为它正在被另一个进程使用。

这对我来说很奇怪,因为它在我的电脑上工作。我将添加一些垃圾收集,看看会发生什么。

更新#2:显然修复了它!这是一个出乎意料的解决办法。感谢大家抽出时间来评论,我真的很感激。

在服务器上运行时,无法从服务器上删除文件

我以前遇到过这个问题,我只是移动到管理共享(''server'c$'path'file.txt),或者将路径更改为本地路径,一切都很好。

应该提到的是,有文件权限和访问共享本身的权限,后者可能是问题所在。

如果更改路径有帮助(并且您不容易访问来修复共享),那么您可以将其设置为配置设置,并在每个位置使用不同的配置