在Windows 7的特殊文件夹上引发异常
本文关键字:异常 文件夹 Windows | 更新日期: 2023-09-27 18:08:19
在我的应用程序中,我使用以下命令从选定的路径获取所有文件:
foreach (string currentFile in Directory.EnumerateFiles(@"c:'", "*.*", SearchOption.AllDirectories))
{
//some logic here
}
事情是,当试图访问某些目录,如c:'Documents and Settings
,我得到一个UnauthorizedAccessException
。
上面提到的文件夹没有显示在Windows Explorer
或.NET System.Windows.Forms.FolderBrowserDialog
中,我找不到这个文件夹的特定属性,所以我可以通过过滤枚举。
我试了这个和这个,但没有用。
是否有任何类型的属性或参数,我可以用来限制这类目录从我的循环?
Directory类不提供跳过不可访问的文件和文件夹的方法。您可以编写自己的目录扫描方法,它将递归地进入每个文件夹,并在发生异常时跳过它。
你就不能让系统管理员给你的用户读取所有文件的权限吗?听起来有些东西是你无法接近的。虽然我不反对您从可移植性的角度排除这些文件来解决这个问题(不幸的是,我不能直接说明如何做到这一点)。