转载自 _USRDLL _AFXDLL _WINDLL 三种dll编译宏的具体含义
#
常见的编译参数VC建立项目时总会定义Win32。控制台程序会定义_CONSOLE,否则会定义_WINDOWS。
Debug版定义_DEBUG,Release版定义NDEBUG.
与MFC DLL有关的编译常数包括:
_WINDLL 表示要做一个用到MFC的DLL
_USRDLL 表示做一个用户DLL(相对MFC扩展DLL而言,静态)
_AFXDLL 表示使用MFC动态链接库的 regular DLL(动态)
_AFXEXT 表示要做一个MFC扩展DLL
所以: Regular, statically linked to MFC
_WINDLL,_USRDLL
Regular, using the shared MFC DLL
_WINDLL,_USRDLL,_AFXDLL
Extension DLL
_WINDLL,_AFXDLL,_AFXEXT