Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
2 / 2 / 0
Регистрация: 10.11.2009
Сообщений: 134

Проверка прав доступа к папке (диску).

18.10.2010, 17:01. Показов 4374. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Меня интересует такой вопрос, как можно проверить возможно ли создать файл в папке. Можно конечно попробовать создать файл и в случае ошибки, мы узнаем можно или нет. Но хотелось бы без создания файла это сделать...Заранее спс....
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.10.2010, 17:01
Ответы с готовыми решениями:

Проверка прав доступа к папке
Прошу помощи. Необходимо в указаном пути перебрать папки на доступ к ней юзера. string abc; ...

Назначение папке прав доступа для всех
Доброе время суток, написал програму и теперь написал к ней установщик. Инсталятор запускается с правами администратора, все работает без...

Проверка наличия прав администратора
Мне необходимо сделать проверку наличия прав администратора в программе. ВАЖНО! Мне нужно, чтобы при запуске программы от администратора...

2
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8728 / 3680 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
18.10.2010, 18:25
Лучший ответ Сообщение было отмечено Shamans как решение

Решение

Я не знаю как проверить без создания, но вот возможный вариант:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
        [DllImport("kernel32.dll", SetLastError = true)]
        static extern IntPtr CreateFile(
              string lpFileName,
              uint dwDesiredAccess,
              uint dwShareMode,
              IntPtr lpSecurityAttributes,
              uint dwCreationDisposition,
              uint dwFlagsAndAttributes,
              IntPtr hTemplateFile
            );
 
        [DllImport("kernel32.dll")]
        static extern int GetLastError();
 
        [DllImport("kernel32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool CloseHandle(IntPtr hObject);
 
        /// <summary>
        /// Метод проверяет возможность создания файла в папке.
        /// </summary>
        /// <param name="folder">Путь к папке.</param>
        /// <returns>Возвращает true, если файл можно создать, иначе false.</returns>
        static bool CanCreateFile(string folder)
        {
            if (!folder.EndsWith("\\"))
                folder += "\\";
 
            folder += Path.GetRandomFileName();
            bool flag = true;
 
            IntPtr hFile = CreateFile(folder, 0x40000000U, 0x1U, IntPtr.Zero, 0x1U, 0x80 | 0x4000000U, IntPtr.Zero);
            if (hFile == (IntPtr)(-1) && GetLastError() != 0) {
                flag = false;
            }
 
            CloseHandle(hFile);
            return flag;
        }
Если файл будет создан, то он будет тут-же удален, за это отвечает 6 параметр с флагом 0x4000000U (FILE_FLAG_DELETE_ON_CLOSE).

Может прокатит как вариант...
1
2 / 2 / 0
Регистрация: 10.11.2009
Сообщений: 134
18.10.2010, 19:17  [ТС]
SSTREGG, спс конечно но я думаю можно обойтись и без win32....
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.10.2010, 19:17
Помогаю со студенческими работами здесь

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

Вычисляемые столбцы, неправильное функционирование прав доступа
Всем привет. Есть несколько проблем, которые не смог решить сам, гугл также не помог. Я начинающий, строго не судите... Имеется БД на...

Настройка прав доступа к папке на сервере
Господа помоги со скриптами При создании счетчика на ASP - счетчик пишет в папку с тестовым файлом count.txt - как настроить права...

Закрытие доступа к папке
Доброго времени суток Уважаемые Дамы и Господа и просто добрые люди ! ВОПРОС ? : Как организовать такое: есть 2 страницы с первой...

Вывод сообщения о отсутствии прав доступа к определённой странице
Здравствуйте. Настроил веб-сайт таким образом, чтобы некоторые пользователи не имели доступ ко всем страницам. Как сделать так, чтобы...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через 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
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru