Member 11966181 Ответов: 1

Vb.net специальная папка ACL


Я, ребята! я пытаюсь найти конкретный файл(xlsx) в моей папке документов,
но я получаю ошибку о разрешении.Я установил vb.net ication в качестве администратора


Спасибо за любую помощь!

Что я уже пробовал:

Dim FolderPath As String = Environment.GetFolderPath(Environment.Специальная папка.Мои документы)

Дим каталог = параметре folderpath

Дим файлы() в качестве системы.ИО.FileInfo может

Dim dirinfo как новый System.IO.DirectoryInfo(каталог)

файлы = dirinfo.Заражен("контакты", ИО.Searchoption указывает, нужно.AllDirectories) строка ошибки:



Eccezione non gestita di tipo 'система.UnauthorizedAccessException' in mscorlib.dll



Для каждого файла в файлах

Список listbox1.Предметы.Добавить файл)

Следующий

Конец Подводной Лодки

1 Ответов

Рейтинг:
9

Dave Kreskowiak

Эта спецификация поиска "xlsx" должна быть "*.xlsx".

Кроме того, у вас есть папка в вашем пути MyDocuments, которая недоступна для вас. Код, который вы запускаете, всегда работает так же, как и вы, поэтому он имеет точно такие же разрешения, как и вы. Например, вы не можете искать путь "C:\$Recycle.Бункер\Ы-1-5-18". Попытка сделать это приведет к ошибке, которую вы получаете.

Либо не ищите "все каталоги", либо вы пишете свой собственный поиск, который обрабатывает исключение и продолжает идти, игнорируя пути к папкам, которые терпят неудачу. Это не так уж и трудно.


Member 11966181

Так что я не могу искать внутри специальной папки? ты это имеешь в виду?

Dave Kreskowiak

Нет. Я сказал, что где-то в дереве каталогов, которое вы ищете, есть папка, к которой у вас нет прав доступа. Вы можете искать папку, которую вы получили из SpecialFolder, но во всех папках под этой папкой есть одна, которую вы не имеете разрешения видеть внутри.