Форум программистов, компьютерный форум CyberForum.ru

Delphi и WinAPI

Войти
Регистрация
Восстановить пароль
 
 
demon31
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 341
#1

Запрет на изменение папки - Delphi WinAPI

03.12.2016, 17:37. Просмотров 794. Ответов 32
Метки нет (Все метки)

Подскажите, каким образом можно реализовать запрет доступа на любое изменение, открытие, чтение какой-либо папки и всех файлов внутри её посредством winapi в delphi 7, OC Windows.
Требуется так, чтоб я открыл программу и нажал кнопку, и после этого пока программа работает будет запрет на доступ к папке.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2016, 17:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Запрет на изменение папки (Delphi WinAPI):

Как сделать запрет на изменение данных в ДбГриде? - Delphi
при двойном щелчке по записи в дбгриде выделяется содержимое ячейки и можно ввести туда что угодно. Как сделать так чтобы при двойном...

Расшаренные папки в локальной сети. Запрет копирования файлов/папки? - Windows 7
При разрешенном чтении запретить копирование файлов или папки целиком в локальной сети? очень слабо верится что такое возможно, но всё...

Изменение даты создания папки и изменение MAC-адреса - CMD/BAT
Ребята всем привет. Нужна ваша помощь. Пишу bat для одной операции и столкнулся с проблемой что надо изменить дату создание папки Program...

Запрет на удаление папки - Администрирование Windows
Доброго! Может кто подскажет как в Windows 7 сделать полный доступ к папке и ее содержимому, кроме возможности ее (главной папки)...

Запрет на удаление папки с файлами - CMD/BAT
Доброго времени. Знаю что можно через параметры папки, безопасность-дополнительно-изменить разрешения-изменить, можно поставить галочки на...

Запрет на индексацию папки поисковиками - SEO
На сайте, в корне есть папка с именем "folder", как запретить поисковикам индексировать её содержимое? Или как поисковику сказать что в...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
demon31
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 341
04.12.2016, 18:21  [ТС] #16
Любой вариант приемлем, сейчас попробую как там

Добавлено через 14 минут
Pascal
1
2
3
4
5
procedure TForm1.Button1Click(Sender: TObject);
var FS: TFileStream;
begin
  FS:=TFileStream.Create('Путь к файлу', fmShareExclusive);
end;
Отличный вариант, но мне нужно бы работа с WinApi, тут есть пример

Pascal
1
2
3
4
5
6
7
8
h := CreateFile('C:\test.txt',
             GENERIC_READ or GENERIC_WRITE,
             FILE_SHARE_READ or     // разрешить чтение
             FILE_SHARE_WRITE,      // разрешить запись
             nil,                   // pointer to security attributes
             OPEN_EXISTING,
             FILE_ATTRIBUTE_NORMAL,
             0);
Только как сделать, что бы отключить чтение или доступ, как с первым случаем?
AVolkof
2 / 2 / 0
Регистрация: 02.01.2016
Сообщений: 44
Записей в блоге: 2
04.12.2016, 18:27 #17
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx

Вроде бы третий параметр надо "ноль".
demon31
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 341
04.12.2016, 18:33  [ТС] #18
Да я что-то уже все обнулил и всё равно открывает нормально .-.
И всё равно есть проблема, это работает для файла, папку в которой файлы как минимум скопировать можно, хоть и без файлов, не знаю, будет ли это уместно.
AVolkof
2 / 2 / 0
Регистрация: 02.01.2016
Сообщений: 44
Записей в блоге: 2
04.12.2016, 19:19 #19
Да, с флагами какая-то ерунда.
В порядке бреда: зашифровать, или загнать в архив с паролем.
demon31
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 341
04.12.2016, 19:23  [ТС] #20
Шифроваться они и так будут, а архив не катит, т.к. мне с ними еще работать прямо в программе.
Hikari
Хитрая блондиночка $)
1447 / 954 / 285
Регистрация: 21.12.2015
Сообщений: 3,798
04.12.2016, 19:34 #21
Цитата Сообщение от demon31 Посмотреть сообщение
Ох, сложно
Может тебе рассказать зачем такое понадобилось?
Чем не годится настройка политики безопасности?
demon31
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 341
04.12.2016, 19:39  [ТС] #22
У меня задание такое, поэтому и не годится.
Слишком уж просто просто галочки поставить.
AVolkof
2 / 2 / 0
Регистрация: 02.01.2016
Сообщений: 44
Записей в блоге: 2
04.12.2016, 19:58 #23
Я думал, что это криптор - вымогатель будет.
demon31
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 341
04.12.2016, 20:06  [ТС] #24
Не, просто защита папки с конфиденциальными данными типа.
Ладно, вопрос в общем-то решен, буду использовать ту функцию, которая не винапишная.
Hikari
Хитрая блондиночка $)
1447 / 954 / 285
Регистрация: 21.12.2015
Сообщений: 3,798
04.12.2016, 23:02 #25
Цитата Сообщение от demon31 Посмотреть сообщение
просто защита папки с конфиденциальными данными типа.
Hide Folder скачай.
northener
05.12.2016, 01:37
  #26

Не по теме:

Сага об X,Y,Z детектед.

demon31
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 341
05.12.2016, 19:27  [ТС] #27
Ох, тот вариант провалился, из-за того, что файлы открыты, работа с ними невозможно и никак это не обойти.

Поднимаю вопрос таким образом: как можно выставить все галочки на запреты чтения, удаления, копирования и.т.д. в настройках безопасности для всех групп, кроме одной, которая будет специально создана для просмотра папки?
Убежденный
Системный программист
Эксперт С++
15512 / 7010 / 1108
Регистрация: 02.05.2013
Сообщений: 11,442
Завершенные тесты: 1
05.12.2016, 19:34 #28
Цитата Сообщение от demon31 Посмотреть сообщение
как можно выставить все галочки на запреты чтения, удаления, копирования и.т.д. в настройках безопасности для всех групп, кроме одной, которая будет специально создана для просмотра папки?
Запрет на изменение папки
Запрет на изменение папки
demon31
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 341
05.12.2016, 19:53  [ТС] #29
Я не могу найти ни одного нормального примера как правильно использовать эти функции
Убежденный
Системный программист
Эксперт С++
15512 / 7010 / 1108
Регистрация: 02.05.2013
Сообщений: 11,442
Завершенные тесты: 1
05.12.2016, 20:32 #30
Я бы с удовольствием написал, но на Delphi не пишу.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.12.2016, 20:32
Привет! Вот еще темы с ответами:

Запрет копирования файлов из сетевой папки - Сети
Дано: Сеть с доменом. Клиентские ПК. 1 ПК используемый в качестве хранилища файлов с расшаренной папкой (для хранения музыки,...

Запрет на создание папки с уже существующим именем - CMD/BAT
Добрый день! Есть bat файл для создания папки: @echo off chcp 1251 >nul echo Создание новой папки... echo Следующие имена...

Запрет на изменение данных - MS Access
Доброго времени суток. У меня такой вопрос: на форме лежит подчиненая таблица, возможно ли сделать так чтобы выделять строки можно было а...

Запрет на изменение поля - MS Access
Добрый день. Возникла проблема -- есть рабочая база данных, в которой, помимо прочего, есть поля с датой регистрации и фамилией...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
05.12.2016, 20:32
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru