VC++编译出错,错误代码:error C1189,请各位高手指点一下。

调试信息:ompiling...StdAfx.cppd:\microsoftvisualstudio\vc98\mfc\include\afxver_.h(130):fa... 调试信息:
ompiling...
StdAfx.cpp
d:\microsoft visual studio\vc98\mfc\include\afxver_.h(130) : fatal error C1189: #error : Please use the /MD switch for _AFXDLL builds
Error executing cl.exe.
Creating browse info file...
BSCMAKE: error BK1506 : cannot open file '.\Debug\StdAfx.sbr': No such file or directory
Error executing bscmake.exe.

For JMicorn checker.exe - 2 error(s), 0 warning(s)

错误地方:
#if defined(_AFXDLL) && !defined(_DLL)
#error Please use the /MD switch for _AFXDLL builds
#endif
展开
 我来答
stone_dongdong
推荐于2017-11-25 · TA获得超过2853个赞
知道大有可为答主
回答量:1636
采纳率:0%
帮助的人:1019万
展开全部
2个解决办法。
1.工程-》属性-》C/C++-》代码生成-》运行时库:修改成: 多线程调试(/MTd); (release版本也修改成 多线程(/MT)

2.工程-》属性-》常规-》MFC的使用:修改为:在静态库中使用 MFC
方法2不一定管用,PC机上的MFC(相对于EVC而言)程序都是多线程的(不信你照2修改试试,会出现找不到_beginthread函数的定义),必须设置多线程版本的运行时库。也就是照1的设置

大哥多给点分吧
年楚姚涵煦
2019-02-07 · TA获得超过3688个赞
知道大有可为答主
回答量:3139
采纳率:25%
帮助的人:218万
展开全部
把.c扩展名改成.cpp就可以了,编译器是依据扩展名来判断是c还是c++语言
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
洛麼
2018-07-06 · TA获得超过165个赞
知道答主
回答量:108
采纳率:42%
帮助的人:13.1万
展开全部
错误 30 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] D:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\atlmfc\include\afx.h 24
出现原因(自己加了个头文件 #include"afx.h")
翻一下我这句话:
添加 #define _AFXDLL 就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式