正在尝试使用目录.EnumerateFiles(“*.jpg”,SearchOption.AllDirectories)

本文关键字:jpg AllDirectories SearchOption EnumerateFiles | 更新日期: 2023-09-27 17:58:00

所以我使用Directory.GetFiles(folder, "*.jpg", SearchOption.AllDirectories)。当我在Windows7的c:'驱动器上尝试它时,由于Windows7仍然有c:'documents and settings(对于xp等遗留系统),它是一个受保护的文件夹。它之所以受到保护,是因为它不是真正的文件夹。这是一个伪文件夹。所以当我运行这个代码时:

try
{
    string[] folders = Directory.GetFiles(@"C:''","*.jpg", SearchOption.AllDirectories);
    foreach (string item in folders)
    { 
       //blah blah
    }
catch
{
}

它总是抛出UnauthorizedAccessException。它不让我过去。我想做的是让它跳过任何没有访问权限的文件夹,但只需继续搜索,不要被捕获块捕获,只需继续。有什么想法吗?

正在尝试使用目录.EnumerateFiles(“*.jpg”,SearchOption.AllDirectories)

我会尝试本文中的两种解决方法之一(单击底部附近的解决方法选项卡):

http://connect.microsoft.com/VisualStudio/feedback/details/94751/optionally-prevent-directoryinfo-getfiles-from-throwing-unauthorizedaccessexception