程序事件日志保存--上位机VC
程序事件日志保存--上位机VC
功能展示
程序运行过程中都会有事件发生,记录这些事件生成日志文件有利于程序故障的判断,当前例程实现程序运行日志的保存功能,效果如图。程序初始化会设置日志保存的文件名,点击按钮<触发事件>可触发一事件进行测试,点击<清空>可清空已经保存的事件信息;
要点提示
例程主要封装一自定义类CStatusLog,实现程序日志保存功能; void Init(const char *pOutputFilename);//设置事件文件名 void Clear();//清空事件 BOOL StatusOut(constchar* fmt, ...);//保存事件信息 void Enable(BOOLbEnable){m_bEnable = bEnable;}//打印开关 void PrintTime(BOOL b) {m_bPrintTime = b;}//是否打印时间 void PrintAppName(BOOL b) {m_bPrintAppName =b;}//是否打印程序名
void SetAppName(const char *pName) {m_csAppName= pName;}//设置程序名 实现功能 1.新建基于对话框的应用程序 2.将类CStatusLog对应的两文件StatusLog.cpp , StatusLog.h复制到自己工程根目录并加载 到工程中; 3.在主对话框类包含头文件#include “StatusLog.h”并定义一变量CStatusLog m_StatusLog;,在程序初始化时初始化变量 m_StatusLog.Init("StatusLog.txt"); // m_StatusLog.PrintTime(TRUE);//是否打印时间 // m_StatusLog.PrintAppName(TRUE); m_StatusLog.StatusOut("%s", "事件格式测试1!"); m_StatusLog.StatusOut("事件格式测试2%d / %4.2f / %4.2f ", 15, 32.434, (15 * 32.434)); m_StatusLog.StatusOut("事件格式测试3I'mat : 0x%x", this); m_StatusLog.StatusOut("程序已初始化");
4.添加按钮<触发事件><清空>关联点击函数 - void CGkbc8Dlg::OnButton1()
- {
- m_StatusLog.StatusOut("按钮点击事件触发");
- }
- void CGkbc8Dlg::OnButton2()
- {
- m_StatusLog.Clear();
- }
复制代码事件信息就保存到程序同级目录下的StatusLog.txt文件中;
我们来演示下功能实现的整个过程
如果您认可,可联系功能定制! 如果您着急,充值会员可直接联系发您资料!
|