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

Вниз

Блокировки файла   Найти похожие ветки 

 
Дмитрий С ©   (2009-07-27 15:14) [0]

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


 
Anatoly Podgoretsky ©   (2009-07-27 15:32) [1]

> Дмитрий С  (27.07.2009 15:14:00)  [0]

Способ есть.


 
Inovet ©   (2009-07-27 15:50) [2]

Если одновременно только одно приложение может иметь доступ, то и открывать с соответсвующим флагом.


 
TIF ©   (2009-07-27 15:54) [3]

OpenFile, OF_SHARE_EXCLUSIVE?
Тут есть пример применения:
http://www.delphimaster.ru/articles/saveparam/index.html


 
TIF ©   (2009-07-27 16:12) [4]

Можно и FileOpen воспользоваться...

FileOpen
Открывает существующий FileName файл в режиме Mode. Значение, возвращаемое в случае успеха, — дескриптор открытого файла. В противном случае — код ошибки DOS.

Допустимы следующие режимы открытия файлов:

Режимы
Открыть только для чтения:
fmOpenRead            $0000
Открыть только для записи:
fmOpenWrite           $0001
Открыть для чтения и записи:
fmOpenReadWrite       $0002
Обеспечить совместимость со старой моделью доступа к файлам:
fmShareCompat       $0000

Запретить другим доступ к файлу:
fmShareExclusive      $0010
Запретить другим запись в файл:
fmShareDenyWrite      $0020.
Запретить другим чтение файла:
fmShareDenyRead       $0030
Разрешить другим все виды доступа:
fmShareDenyNone       $0040


 
Дмитрий С ©   (2009-07-27 17:16) [5]

А ведь верно, файл же можно не держать постоянно открытым, эта мысль пришла мне уже после поста на фррум.

Кстати, а как аксессовые базы решают задачу совместного смешанного доступа к файлу базы?

Пс спасибо всем кто ответил:)


 
Игорь Шевченко ©   (2009-07-27 17:46) [6]


> Кстати, а как аксессовые базы решают задачу совместного
> смешанного доступа к файлу базы?


блокировки ставят, очевидно. И не только аксессовые, а практически любые файловые (безсерверные)


 
Inovet ©   (2009-07-27 17:54) [7]

> [5] Дмитрий С ©   (27.07.09 17:16)
> А ведь верно, файл же можно не держать постоянно открытым,
> эта мысль пришла мне уже после поста на фррум.

Тогда выходит допустимо два приложения запускать.

> Кстати, а как аксессовые базы решают задачу совместного
> смешанного доступа к файлу базы?

Все режимы перечислены выше. Плюс LockFile(), UnlockFile() позволяют получить отменить эксклюзивный доступ к участку.



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

Форум: "Прочее";
Текущий архив: 2009.09.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
15-1248807077
FF_FF
2009-07-28 22:51
2009.09.27
Парсер


15-1248370498
TStas
2009-07-23 21:34
2009.09.27
Иммет ли смысл учиться писать на Аксесе?


2-1248380023
Евгений Р.
2009-07-24 00:13
2009.09.27
Как определить вид свойства по PPropInfo


8-1195024163
Den
2007-11-14 10:09
2009.09.27
Вывод изображения повер другого и сохранение всего этого в файл.


2-1248175930
EH
2009-07-21 15:32
2009.09.27
Компонент в виде object inspector





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский