使用CFile生成log文件的方法
下面实例是在退出程序点击退出按钮时,在主程序的根目录下生成一个Log记录,用来记录程序的退出时间,具体实现代码与调试代码如下:
void CDebugDlg::OnClose()
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CFile file;
CTime time=CTime::GetCurrentTime();
CString str1="记录系统退出时间为:";
CString str2=time.Format("%y-%m-%d %H:%M:%S");
CString str3=" \r\n";
unsigned char pchData[MAX_PATH]={0};
file.Open("Log.txt",CFile::modeCreate|CFile::modeNoTruncate|CFile::modeReadWrite);
file.Read(pchData,MAX_PATH);
if (MessageBox("你是否确定现在退出软件?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)==IDOK)
{
str1+=str2;
str1+=str3;
MessageBox(str1,"提示一");
file.Write(str1,str1.GetLength());
MessageBox(str1+(char*)pchData,"提示二"); //打印当前缓冲区文件中的数据
OnCancel();
}
实例二:
相对实例一中的代码来说,只是在代码一的基础上,在log输出文件中增加了打印当前应用程序标题名,其中标题名由title变量变示,具体修改如下:
void CDebugDlg::OnClose()
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CFile file;
CTime time=CTime::GetCurrentTime();
CString str1="----系统退出时间为:";
CString str2=time.Format("%y-%m-%d %H:%M:%S");
CString str3=" \r\n";
CString title="";
unsigned char pchData[MAX_PATH]={0};
GetWindowText(title); //获取应用程序标题名
file.Open("Log.txt",CFile::modeCreate|CFile::modeNoTruncate|CFile::modeReadWrite);
file.Read(pchData,MAX_PATH);
if (MessageBox("你是否确定现在退出软件?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)==IDOK)
{
title+=str1;
title+=str2;
title+=str3;
MessageBox(title,"提示一");
file.Write(title,title.GetLength());
MessageBox(title+(char*)pchData,"提示二"); //打印当前缓冲区文件中的数据
OnCancel();
}
}
使用CFile生成log文件的方法的更多相关文章
- 调试SQLSERVER (一)生成dump文件的方法
调试SQLSERVER (一)生成dump文件的方法 调试SQLSERVER (二)使用Windbg调试SQLSERVER的环境设置调试SQLSERVER (三)使用Windbg调试SQLSERVER ...
- MDK5生成BIn文件的方法
配置MDK5 生成bin文件的 第一步:方法打开option for Target 第二步:选择 user 第三步:找到After Build/Rebuild 第四步:勾选run,点击文件选择小图标选 ...
- Protel99se生成gerber文件的方法
这几天工作中遇到制作 gerber 的问题,确实让我郁闷了一 番,为了方便大家,不要再受其苦,特将这一过程写成文档供有这方面需要的同仁们参考. 1 protel99se 打开要生成 gerber 的 ...
- mysql无法生成log文件
做服务器主从配置时,发现/var/log/mysql下面一直没有log文件,明明配置文件/etc/mysql/mysql.conf.d/mysqld.cnf也开启log了. general_log_f ...
- 为Quartus工程生成rbf文件的方法
rbf文件是Quartus编译生成的fpga配置文件的二进制数据量格式的文件,主要用于使用外部主机通过PS方式配置FPGA. 在含ARM硬核的SoC FPGA中,可以使用HPS配置FPGA,配置时分为 ...
- 使用Visual Studio将C#生成DLL文件的方法
1.命令方式 打开Visual Studio安装目录下的开发人员命令提示 译 File.cs 以产生 File.exe csc File.cs 编译 File.cs 以产生 File.dll csc ...
- Keil如何生成bin文件【Keil生成Bin文件的方法】
使用过Keil的同鞋都知道,现在Keil中默认可以输出.axf的调试文件和可以通过钩选输出的.hex可执行文件,没有bin(二进制)文件的输出选项.可是偏偏某些时候需要或者习惯性的使用.bin文件来进 ...
- Ubuntu ./configure 半途终止 导致没有生成makefile文件 解决方法
在安装thrift的时候,解压包进入目录,执行命令: ./configure 之后,发现某些包没有安装,导致configure到一半的时候退出,接着make发现没有makefile文件.估计是我系统安 ...
- ubuntu 16.04 清空log文件的方法
由于ubuntu日志文件syslog 和 kern.log 时刻在增长,一会儿就使得根目录文件夹不够用了,需使用如下命令清理 sudo -i 然后输入密码,执行: echo > /var/log ...
随机推荐
- MFC窗口程序显示命令行输出窗口的方法
来源:http://blog.csdn.net/k_shmily/article/details/52596927 WINDOWS为你提供了一系列的API来完成这个功能,例如:ReadConsole, ...
- 用angular实现$.param()
首先介绍一下$.param() 功能: 序列化对象或数组,返回字符串 eg: var params = { width:1900, height:1200 }; var str = jQuery.pa ...
- php 常用的调试方法
file_put_contents("c:\1.log","输出字符串",FILE_APPEND);第三个参数是防止前面的内容被覆盖 error_log(pri ...
- 分布式版本控制系统Git-----6.Git 常见命令一览表
说明/备注 命令 备注 保存更新 git add [-i] -i 逐个确认 检查更新 git status 提交更新 git commit [-a] -m "<更新说明>&quo ...
- 朴素贝叶斯算法 & 应用实例
转载请注明出处:http://www.cnblogs.com/marc01in/p/4775440.html 引 和师弟师妹聊天时经常提及,若有志于从事数据挖掘.机器学习方面的工作,在大学阶段就要把基 ...
- MITMF
一. 安装 项目地址:https://github.com/byt3bl33d3r/MITMf 需要自行手动安装python-nfqueue,pefile模块 sudo apt-get install ...
- Google科学家前腾讯副总裁吴军将出席第二届万物互联创新大会
当越来越多的科技产品注入互联网的基因,"万物互联"的模式悄然兴起.第二届万物互联创新大会(B12大会)将于2016-11-13日在杭州市余杭区隆重召开.Google科学家前腾讯副总 ...
- 分布式日志收集系统Apache Flume的设计详细介绍
问题导读: 1.Flume传输的数据的基本单位是是什么? 2.Event是什么,流向是怎么样的? 3.Source:完成对日志数据的收集,分成什么打入Channel中? 4.Channel的作用是什么 ...
- block的内部实现原理
一.简单定义 block是一个指向结构体的指针,编译器将block内部代码生成对应的函数,上述结构体中的函数指针(funcPtr)指向该函数的实现: 二.相关概念 形参和实参 形参:形式参数,用于定义 ...
- 把json数据 [ { } ] 转为数组
$str = '[{"rwx_price":388.5,"end_station_name":"长沙","swz_price&qu ...