#error请使用/ MD开关进行_AFXDLL构建

Ale*_*ang 26 c++ build visual-c++

我在Visual Studio中遇到错误,Please use the /MD switch for _AFXDLL builds 所以如果我取消定义_AFXDLL,我的程序会出错吗?

ban*_*nuj 38

CRT链接和MFC链接的设置必须一致.实际上,在这个问题上有两个可能的答案:

  1. 使用/ MT(属性 - > C/C++ - >代码生成)和静态MFC(属性 - >常规 - >使用MFC)

  2. 使用/ MD(属性 - > C/C++ - >代码生成)和共享MFC(属性 - >常规 - >使用MFC)

  • 对于最常见的情况,这应该是解决方案。但如果您要创建 AFX 扩展 DLL,则必须使用 /MD。当 _AFXEXT 被定义为预处理器变量时,您正在创建 AFW 扩展 DLL。 (2认同)

小智 8

是的,它会的.您应该做的是转到Visual Studio项目属性.在配置属性 - > C/C++ - >代码生成中,确保为运行时库使用多线程Dll.

这将解决你的问题.