我正在尝试删除在另一台机器上打开的空共享目录。如果我直接删除目录(右键单击并删除),它将被删除。
Stopwatch st = new Stopwatch();
st.Start();
while(true){
try
{
Directory.Delete(pathToDelete, true);
Console.WriteLine("Directory Deleted" + "Elapsed time:" + st.Elapsed.Seconds.ToString() + "sec");
break;
}
catch (Exception e)
{
if ((e is System.IO.IOException) || (e is System.UnauthorizedAccessException) ||
(e is System.Reflection.TargetInvocationException))
{
Console.WriteLine(e.ToString());
if (st.Elapsed > TimeSpan.FromMinutes(5))
{
Console.WriteLine("Can not delete directory ");
return;
}
Thread.Sleep(1000);
}
else
{
throw;
}
}
}
如果目录在同一台机器或不同机器上使用共享路径打开,则不会删除该目录。
我发现了这个 ,但我无法正确理解代码。
有人建议更好的方法吗?提前致谢