Wenn ich unter Windows 7 folgendes mache:
Directory.GetDirectories("C:\Users\VS\AppData\Local", "test", SearchOption.AllDirectories);
Bekomme ich eine Exception:
System.UnauthorizedAccessException:
Der Zugriff auf den Pfad "C:\Users\VS\AppData\Local\Anwendungsdaten" wurde verweigert.
Unter Windows XP funktionierte es noch.
Gibt es eine Alternative zu Directory.GetDirectories() wo alle Verzeichnisse zurück geliefert werden auf die Zugriff möglich ist?
Das ging schon unter XP nicht, wenn entsprechende berechtigungen vergeben waren.
Du musst das von hand recursiv machen.
Hallo,
ich habe das gerade mal mit folgendem Code versucht:
private Stack<String> directoryStack = new Stack<string>();
public int numberOfDirectories;
public void getAllDirectories(String path)
{
directoryStack.Push(path);
while (directoryStack.Count > 0)
{
String aDirectory = directoryStack.Pop();
foreach (String aDirecotry in Directory.GetDirectories(aDirectory))
{
directoryStack.Push(aDirecotry);
}
Console.WriteLine(aDirectory);
numberOfDirectories++;
}
}
und bekomme trotzdem die System.UnauthorizedAccessException.
VG
ProgrammierTroll
q.e.d.
Äh, das händische bedeutete nicht, das die Exception nicht kommt, sondern das DU diese abfangen kannst und alle anderen Verzeichnisse trotzdem bekommst.
Ok lol
Dachte, das wäre irgendwie ein "Hack" oder sowas.
q.e.d.