`
svyee
  • 浏览: 23030 次
  • 性别: Icon_minigender_1
  • 来自: 福建
最近访客 更多访客>>
社区版块
存档分类
最新评论

创建Log文件调试Symbian程序

阅读更多

 

需要在手机上调试代码或跟踪执行过程?RFileLogger也许可以帮助你.这个class的功能非常强大而且很容易使用._

首先声明一个文件日志的连接并且创建一个log文件

RFileLogger iLog;

//打开日志文件服务的连接
iLog.Connect();
iLog.CreateLog(_L("MyLoggingDirectory"),_L("MyLogFile"),EFileLoggingModeOverwrite);
...
//关闭log文件和服务器连接
iLog.CloseLog();
iLog.Close();
第3行的CreateLog函数有三个参数分别为:
    Log路径,Log文件名, 记录模式(EFileLoggingModeOverwrite|EFileLoggingModeAppend)

例如下列代码,是我的log文件的full path(手机上的文件系统)

C:/Logs/MyLoggingDirectory/MyLogFile.

对我来说,我习惯把opening代码放到我希望跟踪的class的ConstructL()函数里面,然后在析构函数里closing.在真正编码时,你最好检测一下Connect和CreateLog是否返回了KErrNone

一旦你完成了这些,你就可以向log文件中输入文本和数据了。基本的命令为:

iLog.Write(_L("Hello World"));
        // * 11/07/2003 4:00:13 Hello World

iLog.Writeformat(_L("Result=%d"),err);
        //* 11/07/2003 4:00:13 Result=0

iLog.HexDump(aHeader,aHeader,myPtr,4);
        //* 11/07/2003 4:00:13 myBuf:0000: 41 42 00 44 AB.D
 
如果不想记录日期和时间,你可以使用这条语句来关闭它们。

iLog.SetDateAndTime(TBool aUseDate, TBool aUseTime);
 
别忘了在MMP文件上加入flogger.lib,还有包含flogger.h头文件。现在可以编译执行你的程序了。

No!log文件还没建立呢!正确!这没办法在代码里完成,我们只能手工在C:/Logs/MyLoggingDirectory目录中创建log文件,否则什么日志也不会记录。不需要重新编译。

注意:如果你不知道怎么做,你可以使用 FExplorer 将文件通过PC传到手机上。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics