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

Вниз

Доступ к файлу, занятому другим процессом   Найти похожие ветки 

 
Gloomer ©   (2006-09-24 21:13) [0]

В строке
Stream := TFileStream.Create(FileName+fDLog, fmOpenRead);
вылетает ошибка "Процесс не может получить доступ к файлу, т.к. файл занят другим процессом"
На что надо заменить fmOpenRead ?


 
Ketmar ©   (2006-09-24 21:14) [1]

добавить ro fmShareDenyWrite, например. или почитать, наконец, справку...


 
Gloomer ©   (2006-09-24 21:20) [2]

Изначально так и было.
Точнее, использовалось TStrings.LoadFromFile, где так и описано
Stream := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
Но это не решает проблемы.
При этом файл прекрасно открывается другими программами


 
Правильный Вася   (2006-09-24 21:25) [3]

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


 
Gloomer ©   (2006-09-24 21:33) [4]

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


 
Ketmar ©   (2006-09-24 22:25) [5]

fmShareDenyNone


 
Gloomer ©   (2006-09-24 23:12) [6]

2 Ketmar
Оно самое - спасибо


 
Ketmar ©   (2006-09-24 23:13) [7]

>[6] Gloomer(c) 24-Sep-2006, 23:12
>2 Ketmar
>Оно самое - спасибо
только учти -- это опасно. мало ли, что там, в файле, поменяют, пока ты его читаешь.


 
ProgRAMmer Dimonych   (2006-09-24 23:38) [8]

Есть ещё TMemoryStream с методом LoadFromFile. Читаем, меняем всё, что душе угодно, вызываем SaveToFile и по фигу, кто там что поменял за время работы.


 
Ketmar ©   (2006-09-24 23:52) [9]

>[8] ProgRAMmer Dimonych 24-Sep-2006, 23:38
>и по фигу, кто там что поменял за
>время работы.
особенно, если это файл со структурой и данными, например. закешированый программой. ей будет очень удивительно.



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

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

Наверх




Память: 0.48 MB
Время: 0.061 c
6-1147423933
Alek
2006-05-12 12:52
2006.10.08
скорость закачки


2-1158321256
DmiSb
2006-09-15 15:54
2006.10.08
Как узнать какое поля ввода потеряло фокус ?


15-1157549352
Новый_Юзер
2006-09-06 17:29
2006.10.08
как заменить картинку при загрузке WindowsXP?


3-1154704412
Klever
2006-08-04 19:13
2006.10.08
количество строк таблицы DBGrid


2-1158928058
Crazy monkey
2006-09-22 16:27
2006.10.08
Как сократить запись?