Войти

Показать полную графическую версию : Логгирование в программе на vb6.0


blackeangel
02-05-2017, 12:07
Есть ли возможность как то выводить в лог-файл все действия программы?
Но так чтоб это было не так трудоёмко добавлять в уже готовую программу

Iska
02-05-2017, 13:18
А что там трудоёмкого? Создаёте процедуру, которая принимает параметром строку. В процедуре открываете файл в %APPDATA%\Имя приложения\Имя приложения.log, пишете в него дату-время и строку. Если файла по указанному пути нет, или отсутствует сам путь — предварительно создаёте. Записали — закрываете файл. Можно, конечно, не открывать-закрывать файл на каждый вызов, а только прои старте-завершении приложения, но тогда, в случае падения приложения, часть лога может быть банально потеряна. Вставляете вызов процедуры во все места, куда потребно.

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

Также можно пойти дальше, и оформить всё это как один класс, и работать уже с ним — создавая его, задавая свойства, и вызывая методы. Это достаточно просто реализуется, и будет нагляднее.

blackeangel
02-05-2017, 13:24
А что там трудоёмкого? Создаёте процедуру, которая принимает параметром строку. В процедуре открываете файл в %APPDATA%\Имя приложения\Имя приложения.log, пишете в него дату-время и строку. Если файла по указанному пути нет, или отсутствует сам путь — предварительно создаёте. Записали — закрываете файл. Можно, конечно, не открывать-закрывать файл на каждый вызов, а только прои старте-завершении приложения, но тогда, в случае падения приложения, часть лога может быть банально потеряна. Вставляете вызов процедуры во все места, куда потребно.

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

Также можно пойти дальше, и оформить всё это как один класс, и работать уже с ним — создавая его, задавая свойства, и вызывая методы. Это достаточно просто реализуется, и будет нагляднее.
Идея хорошая, покажите какие параметры передавать на эту процедуру. Или строковый это тип?
Мне надо чтобы в лог выводилось что то типа:
"Функция, переменные, значения"

Iska
03-05-2017, 19:14
Мне надо чтобы в лог выводилось что то типа:
"Функция, переменные, значения" »
Поясните.

blackeangel
04-05-2017, 15:28
Мне надо чтобы в лог выводилось что то типа:
"Функция, переменные, значения" »
Поясните.

Уже не надо.
Воспользовался VB style code с нумерацией строк. Самое оно.




© OSzone.net 2001-2012