工控编程吧
标题:
程序事件日志保存--上位机VC
[打印本页]
作者:
qq263946146
时间:
2016-12-3 19:02
标题:
程序事件日志保存--上位机VC
(, 下载次数: 1)
上传
点击文件名下载附件
程序事件日志保存--上位机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文件中;
我们来演示下功能实现的整个过程
[iqiyi]http://player.video.qiyi.com/2cabaa5f3676611ce5e786c581234e51/0/0/w_19rujgetzx.swf-albumId=6896553009-tvId=6896553009-isPurchase=0-cnId=12[/iqiyi]
(, 下载次数: 0)
上传
点击文件名下载附件
[weixinlianxi]1[/weixinlianxi]
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4