我爱Aspx >> VC.Net >> NO MFC - 使用 .log 调试程序[9850109] Doing Something...
[9850218] Doing Something...
[9850265] 已经设置 Service 状态为 SERVICE_STOP_PENDING ,并将同步对象设置为激发状态.
[9850312] 同步对象被触发
[9850312] service_mainCleanup!
[9850312] SetServiceStatus to SERVICE_STOPPED 成功!
[9850765] The Service is now Stoped
[9850765] StartServiceCtrlDispatcher Complete.
[9850765] Record End at Date: 2003.08.06 & Time: 16:19:31 .
· 基本流程介绍一下:
首先是在构造函数中,先取得命令行中的执行文件的来源路径和名称,根据该名生成一个对应的 .log 的文件名(如果已存在就扔到回收站去)。 申请内存,创建文件名(如果重复了,末尾追加 .log 重试),设置可使用标记(active=true)。
然后是在使用过程中,使用 ::write() 的方法,把你要写入的信息写入到缓冲区 (请小于 512 字节,否则开辟更大的缓冲区,缓冲区满了则写入到 .log 文件)。 使用完了后使用 ::last() 方法在 .log 文件末尾(也是强制缓冲写入硬盘)追加时间日期。
最后在析构函数中。自然就是三部曲,active=false; CloseHandle(); 和 释放缓冲区
若要使用这个类,请在开头包含类的文件,在所有函数以外定义就是了。如下:
#include "Runtimelog.cpp"
RunTimeLog log;
以下是在窗口过程中使用的例子:
【我对这篇文章有话说?】
VB的ShowInTaskbar功能分析以及用..[05-21]
自己动手丰衣足食-搞定网页乱码[05-21]
CUJ:普及知识:typeint[05-21]
关于VC代码的编写和调试(三)[05-21]
通过串口收发短消息(上)[05-21]
A LITE VIRUS ABOUT PE INFECT[05-21]
让应用程序从IE中获取键入的网址[05-21]
Don Box:Smart Pointers : What..[05-21]
企业上网的几个理由[05-21]
如何在Linux下实现设备的配置[05-21]