скрыть

скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Как запретить копирование конкретного файла или группы файлов



Можно написать прогу, которая будет постоянно сидеть в памяти и не выпускать файлы из-под своего контроля, не давая никакого доступа к ним другим программам, в том числе и копирующей. Делается это так:


// Естественно, вместо D:\gigi.txt — твой файл.
// Из конференции Expert_FAQ

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;





Copyright © 2004-2021 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте   Facebook   Ссылка на Twitter