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

Вниз

Совместный доступ к файлам   Найти похожие ветки 

 
Pastor ©   (2002-02-18 10:46) [0]

Уважаемые мастера! Подскажите как можно открыть файл, который уже используется другой программой, т.е. что-то похожее на импорт. Если конкретно, то нужно прочитать данные Log-файла WinGate в то время, когда прокси работает. Пытаюсь обычным Reset(filename) - не получается.


 
drpass ©   (2002-02-18 12:42) [1]

Перед тем, как использовать Reset с уже используемым файлом, нужно установить режим доступа "только чтение": FileMode:=2;


 
[NIKEL] ©   (2002-02-18 13:51) [2]

надо использовать MemoryStream
можно почитать так (даже если файл интенсивно используеться):

var Memory : TMemoryStream;

begin
Memory := TMemoryStream.Create;
try
Memory.LoadFromFile("busyfile.dat"); // это он!!
..
// можно использовать методы чтения как у обычных файлов

Memory.Read(...);
Memory.Seek(...);
FileSize := Memory.Size;
..
finally
Memory.Free;
end;
end;


тоесть создаёться копия файла в памяти, можно записать в поток и делать всё что нужно - но потом по любому надо будет сохранить его на диск (но если надо почитать только, то просто освобождаем память)



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

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

Наверх




Память: 0.47 MB
Время: 0.008 c
1-19252
Марина
2002-02-20 09:44
2002.03.07
FastReport


1-19259
kaif
2002-02-15 11:08
2002.03.07
Многократное вхождение BPL в заголовок EXE


3-19044
HDD
2002-02-07 15:50
2002.03.07
Помогите пожалуйста дамы и господа


1-19167
MaXie
2002-02-20 12:34
2002.03.07
Обработка исключительной ситуации...


14-19312
Сержик
2002-01-21 09:43
2002.03.07
Есть в природе ramdrive, шоб мегов на 700 диск делала?