ATL工程中使用MFC库的两点问题

1.ATL工程使用MFC库

编译时提示:fatal error C1189: #error :  WINDOWS.H already included.  MFC apps must not #include <windows.h>

解决方法:在stdafx.h中,把afxwin.h提到最前面;工程属性→常规→MFC使用,设置为“在共享DLL中使用MFC”。

2._DllMain

编译时提示:error LNK2005: _DllMain@12 已经在x中定义

原因:MFC DLL已经定义了DLL进入点,在当前ATL工程DLL中也定义了DLL进入点,所以发生了重定义。

解决方法:工程属性→C/C++→预处理器→预处理器定义,删掉_USRDLL。

你可能感兴趣的:(ATL工程中使用MFC库的两点问题)