使用CPPuint时,引入文件,产生编译问题,c:\program files\microsoft visual studio 9.0\vc\atlmfc\include\afx.h(24) : fatal error C1189: #error :  Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]

解决方案 »

  1.   

    看看这个会不会对你有帮助
    http://zhidao.baidu.com/question/236195365.html
      

  2.   

    把MFC独立编译改成共享MFC  你引入了其他库把? 库编译文件不一样会引起这个问题
      

  3.   

    你工程用了MFC,又引用了其他工程的静态lib. 而他的静态lib是MD  你是MFC.冲突
      

  4.   

    /MD[d]中的D表示Dynamic,意思为动态链接CRT库,而vc9中有一个规定,凡是动态链接CRT库的,也必须动态链接MFC库,所有也需要有 /D "_AFXDLL" 编译选项。也就是说,在vc9中, /MD[d] 选项和 /D "_AFXDLL" 选项是联动的,要有两者都有,要么就都没有。
    但好像在vc10中,这种联动貌似被取消了,郁闷。。