Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ведение лог файла, с отрубкой проги 
:(
    Опции темы
Step
Дата 21.4.2005, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



лог файл вести довольно просто если если дописывать в конец и т.д. но если програ вырубаеться и не достигает клоза... то тут данные на винт не попадают...


что предложите


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
Дрон
Дата 21.4.2005, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург

Репутация: 10
Всего: 93



Step
Я всегда делал так:

1. Открываю для append
2. Записываю
3. Закрывю

иначе при сбое получается облом.



--------------------
Да. Именно так.
PM   Вверх
Step
Дата 21.4.2005, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



Дрон, это решение в лоб, правильно работает, но я знаю что есть какаято технология, вот только какая не помню


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
Дрон
Дата 21.4.2005, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург

Репутация: 10
Всего: 93



Step
Хмм... было бы самому интересно.

Прога на С++, под Windows?
Консольная или ГУИ?
Добавлено @ 12:49
Можно, кстати, воспользоваться стандартным Event Log виндовоза.

Посмотри в МСДН: logging events


--------------------
Да. Именно так.
PM   Вверх
Step
Дата 21.4.2005, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



Дрон, сенкс, посмотрю.....

под винду пишу


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
_hunter
Дата 21.4.2005, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 16
Всего: 98



я, может чего недопонимаю, но FlushFileBuffers() после каждого события -- самое оно...


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
chipset
Дата 21.4.2005, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US

Репутация: 27
Всего: 165



Может что-то завязанное на исключениях(SEH или C++) попробовать сделать?


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Step
Дата 21.4.2005, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



_hunter, сенкс
Добавлено @ 16:09
chipset, да это полюбому будет, но позже и с дампами и т.д.. а пока нужно просто лог вести


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
HELPER
Дата 21.4.2005, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 18.4.2005

Репутация: -2
Всего: -2



а можно флюшить поток после каждого ввода в файл, или я не прав???
Добавлено @ 16:55
имел ввиду:
Код

FILE *f;
//----ввод 
flush(f);
//----и тд

Добавлено @ 16:56
черт, то есть fflush(f);
PM MAIL   Вверх
bilbobagginz
Дата 21.4.2005, 17:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 3
Всего: 317



есть разные опции открытия файла.

есть такая writethrough . тебе нужно writethrough.
это значит, что каждый write() будет записан сразу на диск.

ессно возможен вариант смерти во время написания. тогда нужно как-то обозначать смерть процесса, или каждую запись обозначать каким то сочетанием букв.

пока.






--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
En_t_end
Дата 22.4.2005, 06:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2074
Регистрация: 4.12.2004

Репутация: 1
Всего: 20



Step
Ты имеешь ввиду, если у проги во время работы не обработанное ею исключение вылезет ? Ну тогда выход один просто обработать это исключение, в теле обработки поставь закрывание файла, кстати будет удобнее, так как можнол будет сообщить об ошибке и назвать её абстарктный код...ЗЫ я именно так и сделал в своем классе логирования.
Причем вызов flush и ему подобных все-таки притормаживает при больших обьемах, так что думай сам....
PM MAIL ICQ Skype GTalk Jabber   Вверх
Step
Дата 22.4.2005, 08:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5151
Регистрация: 26.9.2002
Где: дурдом.UA

Репутация: 5
Всего: 25



En_t_end, это все будет, но пока, надо обойтись


--------------------
- Дурак учится на своих ошибках, умный на чужих.
 - умные учатся у дураков
PM MAIL ICQ   Вверх
bel_nikita
Дата 22.4.2005, 08:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2304
Регистрация: 12.10.2003
Где: Поезд №21/22 ( ст . Прага )

Репутация: 21
Всего: 47



Step
exception/SEH используй


--------------------
user posted image — регистрация доменов от 150 руб.
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0654 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.