1. 原本正常开发的项目,换一台机器,stdafx.h的编译错误 fatal error C1083: 无法打开包括文件:“afxcontrolbars.h”: No such file or directory
原因是:新机器没有安装vs2008 SP1。
根治方法:安装vs2008 SP1
另一种方法是修改stdafx.h文件:
//#include <afxcontrolbars.h> // 功能区和控件条的 MFC 支持
#define CWinAppEx CWinApp
原因:第三方类通过传入指针使用MFC主窗口的成员,在定义主窗口类的时候出错。
解决方法:第三方类,头文件中指针只能使用CWnd *p,在CPP文件中再做强制类型转换。CPP文件必须先引用resource.h
#include "resource.h"
#include "C××××Dlg.h"
3. CFileFind类的常用功能
CFileFind ff; //以下结果均为CString类型 ff. GetFileName() //返回文件名 ff.GetFilePath();//返回文件的全路径 ff.GetFileTitle();//返回不含后缀的文件名 ff.GetRoot();//返回文件所在目录 PathFindExtension(ff.GetFilePath());//返回文件扩展名