Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.09.18;
Скачать: [xml.tar.bz2];

Вниз

контролировать конкретный файл   Найти похожие ветки 

 
mad_prog   (2005-08-27 15:20) [0]

Мастере как можно контролировать конкретный файл и не давать ему
доступ другим программам ?


 
Anatoly Podgoretsky ©   (2005-08-27 15:37) [1]

Для этого его надо открыть в монопольном режиме.


 
Big Joe ©   (2005-08-27 16:09) [2]

var
 Form1: TForm1;
 // через этот поток мы будем работать с файлом.
 // Для нескольких файлов — несколько потоков.
 fs: TFileStream;

implementation
{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 // вешаем ограничение. Теперь никто не будет трогать файл
 fs:=TFileStream.Create("D:\gigi.txt", fmOpenRead, fmShareDenyNone);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 //Снимаем ограничение.
 fs.Free;
end;


 
Leonid Troyanovsky ©   (2005-08-29 09:51) [3]


> Big Joe ©   (27.08.05 16:09) [2]

> // вешаем ограничение. Теперь никто не будет трогать файл
>  fs:=TFileStream.Create("D:\gigi.txt", fmOpenRead, fmShareDenyNone);


Share Deny None - не препятствовать совместному использованию.

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2005-08-29 09:56) [4]

Big Joe ©   (27.08.05 16:09) [2]
// вешаем ограничение. Теперь никто не будет трогать файл
fs:=TFileStream.Create("D:\gigi.txt", fmOpenRead, fmShareDenyNone);

Ты наоборот снял все ограничения.
Надо fmShareExclusive


 
Пантелеев Иван   (2005-08-29 10:10) [5]

А можно такие же ограничения ставить на папки с подкаталогами?


 
Leonid Troyanovsky ©   (2005-08-29 10:44) [6]


> Пантелеев Иван   (29.08.05 10:10) [5]
> А можно такие же ограничения ставить на папки с подкаталогами?


В смысле, чтобы dwShareMode распространилось на
содержимое папки? Тогда - нет.

Вот операции, которые возможны с хендлом директории:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/obtaining_a_handle_to_a_directory.asp

--
Regards, LVT.


 
dmitry501 ©   (2005-08-29 11:06) [7]

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


 
Anatoly Podgoretsky ©   (2005-08-29 13:40) [8]

Естественно, там нет таких понятий, ты смело можешь грохнуть любой окрытый для записи файл. Там прав то с гулькин нос, только разрешение на чтение, запись, исполнение и то весьма ограничено. Есть права - можешь хоть всю систему стирать.



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

Форум: "Основная";
Текущий архив: 2005.09.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.011 c
1-1124955133
new_user
2005-08-25 11:32
2005.09.18
ProgressBar


14-1125058488
red_imp
2005-08-26 16:14
2005.09.18
Географическре положение


4-1122500345
Quattro
2005-07-28 01:39
2005.09.18
TaskBar


6-1117455483
Flame
2005-05-30 16:18
2005.09.18
proxy


1-1124739442
Michael5
2005-08-22 23:37
2005.09.18
После копирования-вставки компонента он начинает криво работать!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский