所以我正在使用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 块,继续。有任何想法吗?