You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET中删除目录时出现Access denied错误的排查求助

.NET中删除目录时出现Access denied错误的排查求助

各位大佬,我最近碰到个特别诡异的问题,想请大伙帮忙捋捋原因:我用System.IO.Directory.Delete(Path.Combine(path, folderName), true);删除目录时,一直弹出"Access denied"的错误提示,但离谱的是最后目录居然还能被删掉!

我已经做了一堆排查,但还是没搞明白根源,列出来给大家参考:

  • 这些目录之前是用IFileSystemWatcher监控的,我已经把监视器Dispose掉了,可错误还是没消失
  • 仔细检查过目录,里面既没有隐藏文件,也没有任何残留的内容
  • 试着先逐个删除目录里的文件/子目录,这一步完全成功,但当我调用递归参数为false的删除操作(也就是删空目录)时,又触发了Access denied错误
  • 把目录的属性改成普通属性(去掉特殊属性),没用
  • 翻了不少相关的讨论线程,没找到能解决问题的有效信息
  • 加了try-catch能捕获错误不影响流程,但我真的想搞清楚为啥会出现这种矛盾的情况
  • 我甚至关掉了主应用,单独写了个控制台程序来执行删除操作,结果还是报同样的错;重启电脑后再跑这个控制台程序,依旧弹出Access denied的提示
  • 手动修改了目录和内部文件的只读属性,不管是勾选还是取消勾选,问题都存在

有没有大佬碰到过这种情况?求指点一下可能的原因!

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.07 11:35:30