#include "FileMgrGProt.h"
void mmi_write_buffer_to_file(char *buff, unsigned int buffSize, char *fileName)
{
S32 ret = 0;
U32 rwLen = 0;
S8 ascii_path[32];
S8 ucs2_path[64];
FS_HANDLE fileHandle;
sprintf(ascii_path, "%c:\\%s", MMI_CARD_DRV, fileName);
mmi_asc_to_ucs2(ucs2_path, ascii_path);
ret = FS_GetAttributes((const WCHAR *)ucs2_path);
if(ret < FS_NO_ERROR)
{
fileHandle = FS_Open((const WCHAR *)ucs2_path, FS_CREATE_ALWAYS|FS_READ_WRITE);
}
else
{
fileHandle = FS_Open((const WCHAR *)ucs2_path, FS_READ_WRITE);
}
kal_prompt_trace(MOD_TST, "mmi_write_buffer_to_file, fileHandle=%d", fileHandle);
ASSERT(fileHandle>=FS_NO_ERROR);
ret = FS_Seek(fileHandle, 0, FS_FILE_END);
ret = FS_Write(fileHandle, buff, buffSize, &rwLen);
FS_Close(fileHandle);
ASSERT(rwLen==buffSize);
ASSERT(ret >= FS_NO_ERROR);
}
在使用的时候先定义一个buffer
例如:
char filebuff[64] = {0}; //大小可以根据需要来定
memset(filebuff, 0, 64);
sprintf(filebuff, "error code\r\n");
mmi_write_buffer_to_file(filebuff, strlen(filebuff), "error.txt");
这样是输出error code 到文件当中
memset(filebuff, 0, 64);
sprintf(filebuff, "fN=%s\r\n", fileName);
mmi_write_buffer_to_file(filebuff, strlen(filebuff), "error.txt");
这样是输出fileName 到文件当中
memset(filebuff, 0, 64);
sprintf(filebuff, "XXXXX.c, line %d\r\n", __LINE__);
mmi_write_buffer_to_file(filebuff, strlen(filebuff), "error.txt");
这样是输出当前文件的行号到文件中
这样很方便使用,又不用担心catcher引起问题.
分享到:
相关推荐
- **功能**:输出当前系统中所有打开文件的句柄信息。 - **应用场景**:诊断系统中文件句柄泄露等问题。 ##### 10. FS_CheckFile:校验文件完整性 - **功能**:检查指定文件的完整性和一致性。 - **应用场景**:...
在MTK平台上,Trace工具通常与内核、驱动程序和应用程序的调试紧密相关,提供了丰富的日志输出和事件追踪功能。 ### 2. 使用Trace工具 使用Trace工具通常包括以下步骤: - **开启Trace功能**:在内核配置中启用...
Trace是MTK系统中的一个重要组件,用于跟踪系统的行为。在MTK系统中,Trace需要注意以下几点: 1. 需要指定正确的跟踪参数。 2. 需要指定正确的输出文件。 八、异常处理 异常处理是MTK系统中的一个重要组件,用于...
- **抓取状态信息**:若ADB功能可用,可通过特定的bat脚本抓取设备状态信息,包括mtklog、trace、data_aee_exp、NEcore、tombstones等关键日志文件,同时保留手机状态的快照。 综上所述,针对MTK Hang机问题的处理...
- 使用DOS环境下的编译命令对包含调试语句的模块进行重新编译,并将编译后的bin文件下载到手机中。 **3. 配置Catcher工具** - **设置数据库路径**:通过`config`菜单下的`SetDatabasePath`选项指定数据库文件的...
- `-t, -tee`: 将日志信息输出到标准输出。 - `-o, -opt=bypass_argument_to_make`: 传递额外参数给 make。 - `-h, -help`: 显示帮助信息并退出。 - **项目**: - 可选择可用项目之一。 - **操作**: - `listp, ...
- 在此模式下,用户可以从已保存的日志文件中分析原始数据和调试信息。 - 适用于事后的问题分析和故障排查。 - 不需要设备上的服务程序支持。 #### 三、框架窗口和对话框 MTK Catcher提供了丰富的窗口和对话框...
其中包含了多种参数和选项,比如-t或-tee用于在标准输出打印信息,-o或-opt用于将额外参数传递给make命令,而-h或-help则用于打印帮助信息并退出。makeMtk命令支持的动作有列出所有可用项目、检查构建环境、检查功能...
### MTK 开发入门资料详解 ...以上是基于给定文件中的内容整理出来的MTK开发入门资料,涵盖了从编译工具的选择到具体开发技巧的详细介绍。对于初学者来说,熟悉这些工具及其使用方法是十分重要的基础准备工作。
这将允许设备通过移动网络自动同步时间,并启用必要的调试信息输出。 Q2、GPS启动流程: GPS启动通常包括初始化、搜索卫星信号、计算位置、以及保持定位等步骤。首先,系统加载GPS驱动,然后激活GPS芯片,接着进行...
1. **trace.bat**:这是一个批处理文件,通常用于Windows环境,用于执行systrace命令。通过运行这个脚本,用户可以快速启动systrace,记录指定的系统事件,并生成报告。 2. **NOTICE**:这是一个法律文件,通常包含...
3. **日志分析**:Linux内核提供了丰富的日志系统,如dmesg,用于记录驱动运行过程中的信息。通过对这些日志的分析,可以定位和解决问题。 4. **调试工具**:使用GDB进行内核调试是常见的手段。另外,trace32、jtag...
它能够捕获和记录系统中的各种事件,如中断、系统调用、内存访问等,这对于理解和优化系统的性能至关重要。10A版本及以上版本的catcher,可能包含了以下改进: 1. **增强的性能监控**:新版本可能增加了对CPU利用率...