Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 25.06.2015
Сообщений: 27

Ошибка UnauthorizedAccessException при поиске

06.08.2019, 00:16. Показов 2660. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер, столкнулся с такой проблемой. При нажатии на кнопку в приложении Windows Form должен происходить поиск по имени или части имени файла. Но в итоге получаю ошибку доступа к какой-то папке. Как обойти сие чудо?
C#
1
2
3
4
5
6
7
8
9
10
11
try
            {
                string[] allFoundFiles = Directory.GetFiles("C:/", "*filename*.*", SearchOption.AllDirectories);
                foreach (string file in allFoundFiles)
                {
                    listBox1.Items.Add(file);
                }
            }
            catch (DirectoryNotFoundException) { return; }
            catch (SecurityException) { return; }
            catch (UnauthorizedAccessException) { return; }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.08.2019, 00:16
Ответы с готовыми решениями:

Ошибка при поиске среднего гармонического
При поиске среднего гармонического выводит ошибку и не выводит дробные числа. Как исправить? using System; using...

System.UnauthorizedAccessException при заполнение списка list<>
Здравствуйте, господа профи. Сначала код, потом пояснения. try { ...

Исключение System.UnauthorizedAccessException при попытке архивации папки
Добрый день. Возникла такая проблема: Нужно архивировать папку, а после разархивировать её в другую папку. Архивация происходить...

5
 Аватар для dazering
92 / 62 / 31
Регистрация: 22.12.2018
Сообщений: 121
06.08.2019, 09:51
Цитата Сообщение от Agemaker Посмотреть сообщение
ошибку доступа к какой-то папке.
Здесь вся и проблема. Какие-то папки являются системными, скрытыми, без доступа обычному пользователю.
Цитата Сообщение от Agemaker Посмотреть сообщение
Как обойти сие чудо?
Попробуйте запустить приложение с правами администратора.
Или другой вариант, явно указать папки в которых должен происходить поиск
Например:
C#
1
2
3
4
5
6
7
8
9
10
                string[] directories = Directory.GetDirectories("C:/", "*targetDirectories*");
                
                foreach (string dir in directories)
                {
                    string[] allFoundFiles = Directory.GetFiles(dir, "*filename*", SearchOption.AllDirectories);
                    foreach (var file in allFoundFiles)
                    {
                        listBox1.Items.Add(file);
                    }
                }
0
0 / 0 / 0
Регистрация: 25.06.2015
Сообщений: 27
06.08.2019, 13:13  [ТС]
В том то и дело, от имени администратора пытался запустить, не прокатывает. Мне нужно искать файл по всей системе, а так если указывать конкретную директорию оно не ругается.
0
999 / 358 / 135
Регистрация: 27.10.2006
Сообщений: 764
06.08.2019, 16:36
Agemaker, почитайте вот эту тему Глобальный поиск файла
там во втором сообщении (нажните на плюсик) есть нужный вам код.
0
0 / 0 / 0
Регистрация: 25.06.2015
Сообщений: 27
06.08.2019, 20:27  [ТС]
Кого интересует решение, то


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void FileSearch(string sDir)
        {
            try
            {
                foreach (string d in Directory.GetDirectories(sDir))
                {
                    foreach (string f in Directory.GetFiles(d, "*filename*"))
                    {
                        listBox1.Items.Add(f);
                    }
                    FileSearch(d); 
                }
            }
            catch (System.Exception excpt)
            {
                Console.WriteLine(excpt.Message);
            }
        }
Вызывать так:
C#
1
DirSearch("C:\\");
То есть, сперва получаем данные о папках, а потом ищем в этих папках и под папках файл.
0
0 / 0 / 0
Регистрация: 25.06.2015
Сообщений: 27
07.08.2019, 03:11  [ТС]
Цитата Сообщение от Agemaker Посмотреть сообщение
Вызывать так:
Ошибочка. Вызывать вот так
C#
1
FileSearch("C:\\");
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.08.2019, 03:11
Помогаю со студенческими работами здесь

Ошибка: Необработанное исключение типа "System.UnauthorizedAccessException" в mscorlib.dll
static void Main(string args) { File.Create(&quot;c:\\numbers.txt&quot;); for (int i = 0; i &lt; 501;...

Ошибка при поиске строки с наименьшим десятичным значением. Либо неверно считает либо индекс вне границ массива
Написал алгоритм ко всей задачи, а с заданием Свойство должно определять строку с минимальным десятичным значением числа. не могу...

UnauthorizedAccessException при удалении файла
Есть некий код (приведенный ниже), который делает обновление приложения. На некоторых машинах, при автоматическом перезапуске не удаляется...

Исключение при записи в файл: UnauthorizedAccessException
На следующий код выдает это исключение. В чем проблема, как мне записать в файл то?) FileStream fs1 = new...

Ошибка при поиске в БД
Поиск по имени работает. А вот поиск по столбцу название которого состоит из двух слов не работает. В чем тут ошибка? procedure...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru