CFile 类 文件操作 应用日志

CFile 类 文件操作 应用日志

 

我在做项目时,用到CFile 类时,遇到的几个问题,并最终解决了,现在记录下来 ,以后遇到类似问题,可拿来参考!

 

1. 或得当前 程序的路径:

CString str,strError,DocPathName;
 CFile file;

 TCHAR exeFullPath[MAX_PATH]; // MAX_PATH
    GetModuleFileName(NULL,exeFullPath,MAX_PATH);//  或得程序模块 路径;
 int NameLen=(int)wcslen(exeFullPath);
 while(exeFullPath[NameLen]!='//')
 {
  exeFullPath[NameLen--]='/0';
 }
 DocPathName=exeFullPath;
 DocPathName+="Setup.ini";
  m_SetFileName=DocPathName;
 CFileFind m_file;
    BOOL bWorking=m_file.FindFile(DocPathName);
 if(bWorking)
 {
  m_file.FindNextFileW();
 }
 else  
 {
  str=DocPathName;
  m_SetFileName=str;
     ConLib m_file;
     m_file.CreateFileData(str,strError);
  SetFileAttributes(m_SetFileName,FILE_ATTRIBUTE_HIDDEN);// 设置文件为隐藏属性;

 }


2: 设置文件系统属性是,注意事项;

 

当设置文件为隐藏属性时, SetFileAttributes(m_SetFileName,FILE_ATTRIBUTE_HIDDEN);//

文件再次写入时,会打开时失败;

 

f(file->Open(sFileName,CFile::modeWrite | CFile::modeCreate,&e))
  {

//创建 打开时会失败,所以在打开操作之前 设置 为正常属性

// SetFileAttributes(m_SetFileName,FILE_ATTRIBUTE_NORMAL);//

 

}

 

3 文件以 CFile::modeWrite  打开时 ,原来的内容不会察除,

只有 CFile::modeWrite | CFile::modeCreate 呆创建属性才会被察除;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值