Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.10;
Скачать: CL | DM;

Вниз

Кто нибудь завязывался на IFS?   Найти похожие ветки 

 
Бушин Сергей   (2004-09-08 06:11) [0]

Или может какой другой способ подсказать, каким образом отслеживать изменение состояний в файловой системе? В некоторых случаях необходимо прервать операцию, например удаления файла.

Заранее спасибо за ответы.


 
Alex Konshin ©   (2004-09-08 08:10) [1]

А не проще просто не доводить до этого? Например, правильно назначить права доступа?


 
Бушин Сергей   (2004-09-08 10:21) [2]

При чем тут права доступа? Мне нужно отслеживать изменения в файловой системе. Кто чего с файлами делает (куда копирует, перемещает, что создает и т.д.).Как FileMonitor например, но более сложная система.


 
Alex Konshin ©   (2004-09-08 10:42) [3]

При том, что если правильно организовать права, то отменять ничего не надо будет. А отслеживать можно и через notification.
В любом случае IFS и Delphi не дружат - там драйвер писать нужно.


 
Бушин Сергей   (2004-09-08 13:17) [4]

Да, драйвер-фильтр. Но права мне не нужны, а через Notification я не могу узнать над чем и что конкретно произошло. Есть функция ReadChangeNotification, но и она не сможет прервать не нужную операцию. А мне нужно таким образом прерывать тоже удаление, что один файл в папке пользователь мог бы удалить, а другой нет. А если и удаляется файл, то можно было бы сделать его архивную копию. Так что тут по моему только IFS или все таки есть какие нибудь мысли еще?


 
Ihor Osov'yak ©   (2004-09-08 13:29) [5]

наверное только IFS. Можно, конечно, фантазировать об перехвате соотв. апи, но сразу вопрос -  а как быть с перехватом операций, инициализированных со стороны кода, выполняемого на уровне ядра?


 
Alex Konshin ©   (2004-09-08 20:43) [6]

А мне нужно таким образом прерывать тоже удаление, что один файл в папке пользователь мог бы удалить, а другой нет.
Ну вот и назначь соответственно права. Тогда ничего и писать не потребуется. Я, конечно, понимаю, что IFS задействовать это круто, но зачем? Тем более, что на Delphi ты это не сделаешь.


 
Ihor Osov'yak ©   (2004-09-08 21:35) [7]

2 Alex Konshin

см:
> А если и удаляется файл, то можно было бы сделать его архивную копию.

конечно, при условии, что это действительно нужно.. Ведь корзину, кажется, еще никто не отменял..


 
Alex Konshin ©   (2004-09-08 22:00) [8]

На мой взгляд так проблема с удалением файлов надумана. Не так уж часто это происходит и от этого можно защититься штатными средствами.
А как тогда с изменениями файлов? Я могу просто транкейтнуть файл до 0 размера. Потеря информации будет почти та же, что и при удалении. Я не уверен, что и IFS поможет в такой ситуации, ведь не будешь же бекапить файл перед каждым изменением. А если это действительно нужно, то и подход должен быть другим. Не удивлюсь, если будет проще реализовать сетевой диск, с необходимыми свойствами, правда от MS не добьешься нужной документации, хотя может помочь разбор исходников Samba из юниксов.



Страницы: 1 вся ветка

Текущий архив: 2004.10.10;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.022 c
14-1095924563
sapsi
2004-09-23 11:29
2004.10.10
Название для программного комплекса


1-1096360702
Andrews
2004-09-28 12:38
2004.10.10
TPanel и стиль WinXP


14-1095714111
Knight
2004-09-21 01:01
2004.10.10
Русские кодовые страницы


1-1096115569
Dmy
2004-09-25 16:32
2004.10.10
PopupMenu + иконка в трее — не закрывается нормально...


1-1096259413
POSO
2004-09-27 08:30
2004.10.10
Выбранный компонент