exf_fdcopy有大神指导怎么样这个函数吗

2019-07-20 18:45发布

u8 exf_fdcopy(u8(*fcpymsg)(u8*pname,u8 pct,u8 mode),u8 *psrc,u8 *pdst,u32 *totsize,u32 *cpdsize,u8 fwmode)这个复制文件夹具体的参数怎么用
有大神举个例子教教吗

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
正点原子
1楼-- · 2019-07-20 19:27
这是文件夹复制函数哦。在我们综合实验的common.c里面,有参考代码:
[mw_shl_code=cpp,true]//系统更新
//fcpymsg:百分比显示函数
//src:文件来源,"0:",SD卡;"2:",U盘.
//返回值:0,正常
//    其他,错误,0XFF强制退出了
u8 app_system_update(u8(*fcpymsg)(u8*pname,u8 pct,u8 mode),u8* src)
{
        u32 totsize=0;
        u32 cpdsize=0;
        u8 res=0;
        u8 *p_app;
        u8 *p_spb;
        u8 *p_lwip;  
        u8 rval;
        p_app=gui_memin_malloc(100);
        p_spb=gui_memin_malloc(100);
        p_lwip=gui_memin_malloc(100);
        if(p_lwip==NULL)
        {
                gui_memin_free(p_app);
                gui_memin_free(p_spb);
                gui_memin_free(p_lwip);
                return 1;//内存申请失败
        }
        sprintf((char*)p_app,"%s%s",src,APP_SYSTEM_APPPATH);
        sprintf((char*)p_spb,"%s%s",src,APP_SYSTEM_SPBPATH);
        sprintf((char*)p_lwip,"%s%s",src,APP_SYSTEM_LWIPPATH);
        totsize+=exf_fdsize(p_app);//得到三个文件夹的总大小
        totsize+=exf_fdsize(p_spb);
        totsize+=exf_fdsize(p_lwip);
        printf("totsize:%d ",totsize);
        f_mkdir((const TCHAR *)APP_SYSTEM_DSTPATH);//强制创建目标文件夹
        res=exf_fdcopy(fcpymsg,p_app,(u8*)APP_SYSTEM_DSTPATH,&totsize,&cpdsize,1);
        if(res)
        {
                if(res!=0xff)rval=1;                        //第一阶段复制出错
                else rval=0XFF;                                        //强制退出
        }else                                                                //第一阶段OK,启动第二阶段
        {
                res=exf_fdcopy(fcpymsg,p_spb,(u8*)APP_SYSTEM_DSTPATH,&totsize,&cpdsize,1);
                if(res)
                {
                        if(res!=0xff)rval=2;                //第二阶段复制出错
                        else rval=0XFF;                                //强制退出
                }else                                                        //第二阶段OK,启动第三阶段
                {               
                        res=exf_fdcopy(fcpymsg,p_lwip,(u8*)APP_SYSTEM_DSTPATH,&totsize,&cpdsize,1);
                        if(res)
                        {
                                if(res!=0xff)rval=3;        //第三阶段复制出错
                                else rval=0XFF;                        //强制退出
                        }else                                                //第三阶段OK,启动第四阶段
                        {         
                                rval=0;                        //整个过程无错误,无强制退出
                        }                         
                }
        }
        gui_memin_free(p_app);
        gui_memin_free(p_spb);
        gui_memin_free(p_lwip);
        return rval;
}[/mw_shl_code]
yym5512021
2楼-- · 2019-07-20 23:38
exf_fdcopy(&disp,"0:GUI_Font","2:GUI_Font",a,c,0);我这样写为什么在2:GUI_Font里面的文件夹名字是15而不是Font的?哪里出问题了?
yym5512021
3楼-- · 2019-07-21 02:51
正点原子 发表于 2016-10-13 10:22
这是文件夹复制函数哦。在我们综合实验的common.c里面,有参考代码:
[mw_shl_code=cpp,true]//系统更新
...

好的,多谢原子哥!
MonkeyD路飞
4楼-- · 2019-07-21 05:00
 精彩回答 2  元偷偷看……
yym5512021
5楼-- · 2019-07-21 07:43
MonkeyD路飞 发表于 2016-11-12 09:34
这个综合实验怎么搜不到。。

在图片实验还是汉字实验的
MonkeyD路飞
6楼-- · 2019-07-21 12:26
 精彩回答 2  元偷偷看……

一周热门 更多>