假设我有一个类似的文件夹结构:
C:\MyTemp
- MySubFolder
如果我尝试使用以下方法删除它:
Dim path As String = "C:\MyTemp"
Dim di As System.IO.DirectoryInfo
di = System.IO.Directory.CreateDirectory(path)
di.CreateSubdirectory("MySubFolder")
di.Delete(True)
这工作正常,除非我打开了 Windows 资源管理器我正在查看“MySubFolder”目录。然后我得到一个 IOException该目录不为空。- 单击“确定”会取消此操作,并且不会删除文件夹结构。
即使在 Windows 资源管理器中打开文件夹结构时运行此代码,我对如何使其正确执行(即删除)有何想法?
唯一能让它 100% 一致“工作”的方法是通过核攻击浏览器(坏主意)或核攻击手柄(也是个坏主意 https://stackoverflow.com/questions/1040/how-do-i-delete-a-file-which-is-locked-by-another-process-in-c)
我的建议是优雅地处理失败,而不是尝试这样做。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)