要在MFC中使用CImage就要引用包含CImage类的头文件atlimage.h
比如打开应用程序的stdafx.h文件添加CImage类的包含文件:
比如打开应用程序的stdafx.h文件添加CImage类的包含文件:
#include <atlimage.h>
但是编译过程中总会出现如下问题:
错误 1 fatal error C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h>
网上的解决方法都是找的所有引用window.h的地方,然后删除#include <windows.h>(在afxv_w32.h之前的)
这种方法很麻烦
一种比较简单的方法是:
在包含afxwin.h之前包含文件altimage.h
比如我建立的MFC对话框项目CImage_test,打开CImage_testDlg.h文件,包含:
#include <atlimage.h>
#include "afxwin.h"
具体的冲突原因见:
http://hi.baidu.com/584433640/item/a67db5fbf195b57d3c198b79
PS:由于理解不深,还不知道副作用是啥,有高手请指点一下