C#: доступ к пути ‹'filepath'› запрещен

Возможный дубликат:
Почему я получаю сообщение об отказе в доступе к папке "Документы и настройки"?

У меня есть программа, которая будет читать все файлы .exe из указанной пользователем папки и ее подкаталогов. Во время тестирования я пытался сканировать, используя C:\ как root.

Это выдало "UnauthorizedAccessException was unhandled" {"Доступ к пути "c:\Documents and Settings\" запрещен."}

Фрагмент кода, делающий это, выглядит следующим образом:

 string customScanFolder = Console.ReadLine();
    Console.WriteLine("");

    if (Directory.Exists(customScanFolder) == true)
    {
        string[] customScanResults = Directory.GetFiles(customScanFolder, "*.EXE", SearchOption.AllDirectories);

Я все еще очень новичок в С#, но все поиски в Google и связанные темы здесь не помогли указать мне правильное направление.

Система, на которой работает моя программа, - Win7 с отключенным UAC. В .exe включен параметр «Запуск от имени администратора».

Программа будет только читать из файлов, а не записывать в них. Что мне нужно сделать, чтобы либо предоставить права доступа, либо избежать этой ошибки другим способом?

Спасибо,

Бен


person Community    schedule 10.02.2012    source источник
comment
dup - stackoverflow.com/questions/4814112/ и stackoverflow.com/questions/8529806/   -  person Zach Green    schedule 10.02.2012
comment
У вас есть C:\Documents and Settings\ на машине с Win7?   -  person Stealth Rabbi    schedule 10.02.2012
comment
Спасибо, посмотрю :) Да, я имел в виду C:\Users   -  person    schedule 10.02.2012


Ответы (2)


C:\Documents and Settings не является папкой в ​​Windows 7. Это соединение (или ссылка) с C:\Users. Вы должны игнорировать это.

C:\>dir /a:s C:
 Volume in drive C has no label.
 Volume Serial Number is 86F5-8CF5

 Directory of C:\

03/04/2011  10:19 AM    <DIR>          $Recycle.Bin
02/03/2012  03:00 PM    <DIR>          Config.Msi
07/14/2009  12:08 AM    <JUNCTION>     Documents and Settings [C:\Users]
12/30/2011  01:19 PM    12,882,337,792 pagefile.sys
10/23/2009  03:07 PM    <DIR>          Recovery
01/11/2011  10:24 AM    <DIR>          System Volume Information
               1 File(s) 12,882,337,792 bytes
               5 Dir(s)  64,772,997,120 bytes free
person Nasir    schedule 10.02.2012
comment
Вы правы, это было напечатано до того, как я подумал. Visual Studio 2010 сказал «Документы и настройки» при ссылке на C:\users\ - person ; 10.02.2012

Это то же самое, что и проблема, с которой я столкнулся недавно. См. этот пост для решения, которое я использовал.

Служба Windows, запущенная как система, не может получить доступ к C:\users\

person Grant H.    schedule 10.02.2012