Главная страница
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
3-1154956684
uchik
2006-08-07 17:18
2006.10.08
помогите перенести данные из одной базы в другую


15-1158172652
Колдун
2006-09-13 22:37
2006.10.08
Опять задачка :-)


9-1136934366
GLMaterialLibrary1
2006-01-11 02:06
2006.10.08
GLScene Как сделать тоже самое только в поток?


3-1154852835
slaviq
2006-08-06 12:27
2006.10.08
Delphi+Paradox запуск приложения c CD


15-1158582444
Konstantin555
2006-09-18 16:27
2006.10.08
C помощью какой программы можно скрыть повреждённые сектора?