Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
2 / 2 / 0
Регистрация: 20.03.2018
Сообщений: 55
.NET 4.x

Получение списка файлов в директории и вывод сообщения об ошибке в элемент формы

03.04.2021, 10:54. Показов 1034. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В приложении Windows Forms при выборе директории C:\Windows и расширении файла dll получаю исключение: "Отказано в доступе по пути "C:\Windows\AppCompat\Programs". Отказ в доступе возникает и для директории C:\Program Files и других. При этом Total Commander прекрасно находит все dll в этой директории. Чтобы не возникало исключения, я сделала так
C#
1
2
3
4
5
6
7
8
9
      try
      {
        FilesToProcess = Directory.GetFiles(DirName1 + "\\", "*." + ext, SearchOption.AllDirectories);
      }
      catch(UnauthorizedAccessException)
      {
        // Здесь хотелось бы в richTextBox1 на второй вкладке формы поместить сообщение об ошибке
        return 1;
      }
Наверное, чтобы не возникало исключения, нужно заменить Directory.GetFiles каким-то другим методом, чтобы не возникало исключения и можно было получить список файлов в директории. Как мне сделать следующее:
1. Поместить на форму сообщение из класса Class1, в котором находится метод получения списка файлов в директории? Я уже задавала вопрос о возможности изменения параметров элементов управления на форме из другого класса, но ответа не получила. А мне хотелось бы научиться это делать, чтобы была возможность из другого класса изменять параметры на форме.
2. Исправить программу, чтобы можно было получить полный список файлов в директориях, как в Total Commander?
Вложения
Тип файла: zip WindowsFormsApplication1Forum.zip (12.7 Кб, 0 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.04.2021, 10:54
Ответы с готовыми решениями:

FTP: получение списка файлов из потока. Как вывести список файлов из директории?
доброго времени суток. пытаюсь написать свой FTP-клиент. отправил серверу команду LIST, и в ответ он выдал "ок. успешно" ...

Получение списка файлов из директории
Кто-нибудь может подсказать как это делается на C(не ++). В исходниках ls найти не смог. Либо может кто-нибудь знает как получить вывод...

Получение списка файлов в директории проекта
если запустить как java test.class * по получаем список файлов дтректории проэкта если /* - список файлов на диске public class...

10
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
03.04.2021, 11:02
Elisaveta1995, для работы с системным диском, нужно наличие админских прав для программы. Вы можете прописать манифест к вашей программе, либо запускать программу из-под администратора.
0
2 / 2 / 0
Регистрация: 20.03.2018
Сообщений: 55
03.04.2021, 11:37  [ТС]
Спасибо за ответ. Попробовала запустить программу от администратора - все равно возникает исключение. А как "прописать манифест к программе", чтобы она запускалась от администратора?
Кроме того, хотелось бы все-таки получить ответ на вопрос об изменении параметров элементов управления из класса.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18288 / 14211 / 5368
Регистрация: 17.03.2014
Сообщений: 28,889
Записей в блоге: 1
03.04.2021, 19:14
Цитата Сообщение от Elisaveta1995 Посмотреть сообщение
Попробовала запустить программу от администратора - все равно возникает исключение. А как "прописать манифест к программе", чтобы она запускалась от администратора?
Если запуск от администратора не помог, то добавление манифеста тоже не поможет, но просто для информации прочтите эту тему - Получение температуры процессора

Что касается сути вопроса, то советую использовать метод SafeEnumerateFiles который пропускает каталоги в которые не может зайти.
0
2 / 2 / 0
Регистрация: 20.03.2018
Сообщений: 55
04.04.2021, 00:12  [ТС]
Спасибо за ответ. А как же Total Commander находит файлы в директории, в которую у меня не получается войти? Ведь Total я запускала не от администратора.
Хотела бы все-таки узнать, как изменить параметр элемента формы (в моем случае добавить текст в Rich) из другого класса.
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
04.04.2021, 00:29
Цитата Сообщение от Elisaveta1995 Посмотреть сообщение
А как же Total Commander находит файлы в директории, в которую у меня не получается войти? Ведь Total я запускала не от администратора.
Да не может Total Commander (или любая другая программа) открыть папки к которым нет доступа без прав админа, не несите чушь.

Специально проверил Total Commander с правами админа и без прав админа на папке C:\Windows\AppCompat\Programs и без прав админа он туда даже не заходит...
0
2 / 2 / 0
Регистрация: 20.03.2018
Сообщений: 55
04.04.2021, 00:39  [ТС]
Может у Total есть какие-то скрытые опции, но результаты поиска в директории, при входе в которую у меня возникает исключение, я привела на вложении. Он прекрасно все находит, при этом я не запускаю его от администратора, а простым щелчком.
Миниатюры
Получение списка файлов в директории и вывод сообщения об ошибке в элемент формы  
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18288 / 14211 / 5368
Регистрация: 17.03.2014
Сообщений: 28,889
Записей в блоге: 1
04.04.2021, 01:21
Цитата Сообщение от Elisaveta1995 Посмотреть сообщение
А как же Total Commander находит файлы в директории, в которую у меня не получается войти?
Он какой-нибудь сервис в систему не ставит случайно?

Цитата Сообщение от Elisaveta1995 Посмотреть сообщение
Хотела бы все-таки узнать, как изменить параметр элемента формы (в моем случае добавить текст в Rich) из другого класса.
В другой теме пожалуйста. Не надо валить разные вопросы в одну кучу.
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
04.04.2021, 01:49
В Total Commander когда он запущен без прав админа при попытке зайти в папку, к которой нет доступа появляется запрос, если нажать кнопку "С админ правами", то запускается внешний процесс "tcmadmin.exe", появляется UAC запрос от винды и только если дать разрешение UAC можно увидеть файлы в этой папке...

Никакой магии...
Миниатюры
Получение списка файлов в директории и вывод сообщения об ошибке в элемент формы  
0
2 / 2 / 0
Регистрация: 20.03.2018
Сообщений: 55
04.04.2021, 12:46  [ТС]
Someone007, Вы совершенно правы, я еще раз проверила, так оно и есть.

OwenGlendower, тему я уже создавала, да вот ответа не получила (Получение в классе параметров элементов управления на форме). Наверное, ее нужно было назвать "Получение и установка в классе параметров элементов управления на форме". Нужно мне создавать новую тему или может быть появится ответ в старой?
0
04.04.2021, 14:00

Не по теме:

Цитата Сообщение от Elisaveta1995 Посмотреть сообщение
Нужно мне создавать новую тему или может быть появится ответ в старой?
Поднимите старую тему написав что именно еще осталось непонятным.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.04.2021, 14:00
Помогаю со студенческими работами здесь

Получение списка файлов в директории и сохранения их в файл
Здравствуйте! помогите с решением. Хочу чтобы записывалась история посещений директорий в проводнике...т.е при открытии любой папки - имя...

Получение списка всех файлов, находящихся в определённой директории на определённом компьютере
Всем привет! Нужен скрипт, который бы перечислял бы мне список всех файлов в определенной директории у определенного компьютера...

Получение списка файлов в директории, у которых в названии две цифры 5 (нужны комментарии)
Здравствуйте,не могли бы вы разъяснить каждую строку? Буду очень благодарен import os import collections for x in...

Вывод списка файлов из директории
Доброе время суток. Возникла проблема, мне необходимо осуществить вывод списка файлов из определенной директории(задается пользователем),...

Вывод списка файлов и папок директории
Доброго времени суток! Помогите пожалуйста написать функцию, описанную ниже. Функция: Вход: строка(адрес) E:\Games\Distributives\ ...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru