2017-09-13 79 views
0

我从VC++ 2013获取链接器错误消息:为什么我的C++ ATL项目链接在CIL中?

1>* CIL library *(* CIL module *) : 
error LNK2005: [email protected] already defined in mfcs120u.lib(dllmodul.obj) 

我需要的MFC一个,而不是一个.NET相关的库。这是一个纯粹的C++项目,包含“ATL简单对象”的COM DLL,并且在常规项目设置中选择“无公共语言运行时支持”。我实际上只是向导创建它,它具有与其他工作COM DLL相同的设置。

这个CIL库怎么可能最终在构建?

+0

通常,头文件将指定要链接的库。请尝试扫描包含的所有头文件,以查看它们中的任何一个是否是原因。 –

+0

@MarkRansom谢谢。我认为错误信息实际上是误导性的,并且与通用中间语言完全没有关系。 –

回答

1

OK,如果有人需要这个以供将来参考:

当MFC头将被添加到其使用MFC在ATL向导项目创建过程中未选择ATL项目会出现这种情况。

原因:对于启用MFC的COM DLL,生成的dllmain.cpp有点不同,但稍后在查看向导输出时很容易适应。

相关问题