错误 C1189 MFC

问题描述 投票:0回答:1

我已经在网上搜索了解决方案,但没有任何帮助。 我想用 C++ 编写一个简单的聊天,一切都很好,但我收到此错误:

错误 C1189:#error:使用 /MD[d](CRT dll 版本)构建 MFC 应用程序需要 MFC 共享 dll 版本。请#define _AFXDLL 或不要使用 /MD[d]

我已经定义了

#define _AFXDLL

但是错误仍然发生。感谢任何帮助!

c++ dll mfc
1个回答
12
投票

有两个设置必须彼此一致:

  1. 项目>属性>常规(现在在VS2022中为高级)>使用 MFC

  2. 项目 > 属性 > C/C++ / 代码生成 / 运行时

图书馆

如果 (1) 设置为

Use MFC in static library
,则 (2) 必须为
Multithreaded (/MT)
Multithreaded Debug (/MTd)
(相应地,在发布和调试版本中)。如果 (1) 是
Use MFC in Shared DLL
,则 (2) 一定是
Multi-threaded DLL (/MD)
Multi-threaded Debug DLL (/MDd)

当两者不一致时,您会收到所显示的错误。

© www.soinside.com 2019 - 2024. All rights reserved.