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

Вниз

Записать в файл сразу, аналог flush pascal   Найти похожие ветки 

 
AV ©   (2012-02-15 10:55) [0]

есть вероятность падения приложения
есть задача свести потерю лога к минимуму
имею
FFSLogAction := TFileStream.Create(

 FFSLogAction.Position := FFSLogAction.Size;
 FFSLogAction.WriteBuffer(sAction[1], Length(sAction));
 FlushFileBuffers(FFSLogAction.Handle);

правильно?


 
Ega23 ©   (2012-02-15 11:20) [1]


>  FFSLogAction.WriteBuffer(sAction[1], Length(sAction));

FFSLogAction.WriteBuffer(sAction[1], Length(sAction)* SizeOf(Char));
Если я правильно понял.


 
AV ©   (2012-02-15 11:24) [2]


> FlushFileBuffers

не совсем, мне именно сброс буферов нужен.
т.е. попросить ОС записать сразу,
обычно, все что хочет средний человек, уже реализовано
т.е. ожидая найти FFSLogAction. Flush был расстроен :)

отсюда,
применим ли вариант
FlushFileBuffers(FFSLogAction.Handle);


 
CRLF   (2012-02-15 12:01) [3]

А может стоит CreateFile с FILE_FLAG_WRITE_THROUGH, а затем TFileStream.Create(Handle)?


 
AV ©   (2012-02-16 11:21) [4]

Ладно. В принципе это работает.

тогда еще вопрос
как писать в файл так, что бы все могли читать, но не могли писать?
если fmCreate  - то ему кажется все равно, что я еще понаписал, он не дает и читать тоже.

Если изголиться так
 if not(FileExists(s)) then
   FfsLog := TFileStream.Create(s, fmCreate or fmShareDenyWrite);
 FfsLog.Free;
 FfsLog := TFileStream.Create(s, fmOpenWrite or fmShareDenyWrite);
то нормально,
но плохо смотрится :)
Как бы хорошо сделать?


 
Anatoly Podgoretsky ©   (2012-02-16 11:27) [5]

> AV  (16.02.2012 11:21:04)  [4]

Убери права на запись в файл



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

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

Наверх




Память: 0.45 MB
Время: 0.061 c
15-1338323402
Юрий
2012-05-30 00:30
2013.03.22
С днем рождения ! 30 мая 2012 среда


4-1259064819
Leonid Troyanovsky
2009-11-24 15:13
2013.03.22
Как заставить GUI thread создать нужное мне окно?


15-1340523107
brother
2012-06-24 11:31
2013.03.22
Помогите вспомнить фильм...


2-1333827483
OldMBr
2012-04-07 23:38
2013.03.22
Сообщения, не требующие ответа


15-1340225766
wl
2012-06-21 00:56
2013.03.22
ищу программистов iOS, Android. default-city





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