4

所以我正在使用Directory.GetFiles(folder, "*.jpg", SearchOption.AllDirectories). 当我在 Windows 7 的驱动器上尝试它时c:\,由于 Windows 7 仍然有c:\documents and settings(对于像 xp 这样的旧系统),它是一个受保护的文件夹。它只是受到保护,因为它不是一个真正的文件夹。这是一种虚拟文件夹。所以当我运行这段代码时:

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

它总是抛出 UnauthorizedAccessException。它不允许我过去。我想要做的是让它跳过它没有访问权限的任何文件夹,但只是继续搜索,不要陷入 catch 块,继续。有任何想法吗?

4

1 回答 1

2

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

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

于 2011-05-29T19:22:33.327 回答