vc.net2005 创建的dll 构建出现MTd' and '/clr' command-line options are incompatible的问题

ameyume
博客专家认证
2008-06-30 11:32:51

如题,我创建的一个mfc dll库,工程的属性设置如下图所示:


但是,执行rebuild时,报如下错误:只有把工程属性的use of MFC设置为“Use MFC in a Shared DLL”才能编译通过,但是要求必须用“Use MFC in a Static Library”,请问怎么设置才可以编译通过?
多谢。

1>Compiling...
1>cl : Command line error D8016 : '/MTd' and '/clr' command-line options are incompatible
...全文
1129 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
ameyume 2008-07-01
  • 打赏
  • 举报
回复
麻烦再问一下,如果不使用MSXML等,而使用本地代码和托管的代码,该怎么设置?

[Quote=引用 10 楼 zhouzhenyan 的回复:]
引用 5 楼 ameyume 的回复:
但是如果不选择clr,则编译报如下错误:
error C2653: 'System' : is not a class or namespace name
error C2065: 'XmlNodeList' : undeclared identifier
error C2065: 'MyNodes' : undeclared identifier

不选择clr,则怎么使用System::Xml::XmlNodeList等对象?


貌似要解析XML吧,不用clr也可以解析XML啊,用MSXML就可以了,或者用tinyXML等。
单为了这个没必要本地代码和托管…
[/Quote]
ameyume 2008-07-01
  • 打赏
  • 举报
回复
非常感谢。
主要是第一次用,只有一个用托管的例子可以参考。没想到还弄的这么复杂。
那我用MSXML试试!
[Quote=引用 10 楼 zhouzhenyan 的回复:]
引用 5 楼 ameyume 的回复:
但是如果不选择clr,则编译报如下错误:
error C2653: 'System' : is not a class or namespace name
error C2065: 'XmlNodeList' : undeclared identifier
error C2065: 'MyNodes' : undeclared identifier

不选择clr,则怎么使用System::Xml::XmlNodeList等对象?


貌似要解析XML吧,不用clr也可以解析XML啊,用MSXML就可以了,或者用tinyXML等。
单为了这个没必要本地代码和托管…
[/Quote]
ameyume 2008-06-30
  • 打赏
  • 举报
回复
有知道的吗?麻烦教导一下。
zhouzhenyan 2008-06-30
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 ameyume 的回复:]
但是如果不选择clr,则编译报如下错误:
error C2653: 'System' : is not a class or namespace name
error C2065: 'XmlNodeList' : undeclared identifier
error C2065: 'MyNodes' : undeclared identifier

不选择clr,则怎么使用System::Xml::XmlNodeList等对象?
[/Quote]

貌似要解析XML吧,不用clr也可以解析XML啊,用MSXML就可以了,或者用tinyXML等。
单为了这个没必要本地代码和托管代码混编吧。
ameyume 2008-06-30
  • 打赏
  • 举报
回复
要求用英文的,只好用英文版了。
[Quote=引用 8 楼 micenote 的回复:]
有中文的。为什么要用英文的呢?
[/Quote]
nodeserver 2008-06-30
  • 打赏
  • 举报
回复
有中文的。为什么要用英文的呢?
ameyume 2008-06-30
  • 打赏
  • 举报
回复
在保留生成static dll的条件下,怎么设置才可以通过编译?
ameyume 2008-06-30
  • 打赏
  • 举报
回复
不选择clr,把Common Language Runtime support设置为No Common Language Runtime support。
在文件头增加using namespace System;
编译结果如下:
: error C2871: 'System' : a namespace with this name does not exist
: error C2653: 'System' : is not a class or namespace name
: error C2065: 'XmlNodeList' : undeclared identifier
: error C2065: 'MyNodes' : undeclared identifier
ameyume 2008-06-30
  • 打赏
  • 举报
回复
但是如果不选择clr,则编译报如下错误:
error C2653: 'System' : is not a class or namespace name
error C2065: 'XmlNodeList' : undeclared identifier
error C2065: 'MyNodes' : undeclared identifier

不选择clr,则怎么使用System::Xml::XmlNodeList等对象?
e_bot 2008-06-30
  • 打赏
  • 举报
回复
二者只能选其一
abomber2 2008-06-30
  • 打赏
  • 举报
回复
貌似 不行哦
ameyume 2008-06-30
  • 打赏
  • 举报
回复
up

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧