.NET 4.x Отказано в доступе по пути при перечислении всех файлов во всех папках на диске С - C#
Формулировка задачи:
Доброго времени суток. Пробую перечислить все файлы во всех папках на диске С.
Вот так:
И выскакивает исключение Отказано в доступе по пути "C:\Documents and Settings".
Почему выскакиевает почти понятно, ну почти) Как решить данную проблему????
static void Main( string [] args )
{
Console.ForegroundColor = ConsoleColor.Green;
WindowsIdentity wi = WindowsIdentity.GetCurrent();
DirectoryInfo dir = new DirectoryInfo( "C:\\" );
DirectoryInfo [] dir2 = dir.GetDirectories();
foreach ( var t in dir2 )
{
Console.WriteLine( "==============================" );
Console.WriteLine( t.FullName );
Console.WriteLine();
FileInfo [] file = t.GetFiles();
foreach ( var y in file )
{
Console.WriteLine( y.FullName );
}
Console.WriteLine( "==============================" );
}
Console.ReadKey();
}Решение задачи: «.NET 4.x Отказано в доступе по пути при перечислении всех файлов во всех папках на диске С»
textual
Листинг программы
static void Main(string[] args)
{
Console.ForegroundColor = ConsoleColor.Green;
DirectoryInfo dir = new DirectoryInfo("C:\\");
PrintFiles(dir);
Console.ReadKey();
}
static void PrintFiles(DirectoryInfo dir)
{
foreach (var file in dir.GetFileSystemInfos())
Console.WriteLine(file.FullName);
foreach (var path in dir.GetDirectories()
.Where(d => !d.Attributes.HasFlag(FileAttributes.NotContentIndexed)))
PrintFiles(path);
}