15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Создаём заблокированный файл.

Автор: Christian Cristofori

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

Совместимость: Delphi 4.x (или выше)

  Пример:

Есть как минимум два способа сделать это, но один из них, при помощи Windows API (LockFileEx и UnlockFileEx) используя параметр LOCKFILE_EXCLUSIVE_LOCK не очень хорош на мой взгляд.

Поэтому предлагаю другой способ, путём создания файла при помощи функции OpenFile:

hMyLockedFile := OpenFile( 'c:\variables.dat', ofStruct, OF_CREATE Or OF_READWRITE Or OF_SHARE_EXCLUSIVE );

Теперь Вы можете работать с файлом, но пользователи уже не смогут изменить его!