_DllMain@12 already defined的问题

如果开始用了一个SDK的Dll工程,然后为了在这个dll工程里面使用MFC,那么就会出现错误,例如

nafxcw.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MsgBox.obj

或者

mfcs42.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MsgBox.obj

为了解决该问题

你只需要在工程设置里面,把

WIN32,NDEBUG,_WINDOWS,_MBCS,_USRDLL,MSGBOX_EXPORTS,_WINDLL,_AFXDLL

中的_USRDLL,删除,就可以正确编译了

 

时间: 2024-09-23 02:54:35

_DllMain@12 already defined的问题的相关文章

error LNK2005: _DllMain@12 已经在 dllmain.obj 中定义

error LNK2005: _DllMain@12 已经在 dllmain.obj 中定义 今天遇到了同样的问题,搜索搜到了这里,后来解决了........ 创建解决方案时,用的是WIN32 DLL,添加了MFC ATL的支持,自动生成文件中是没有现成的DllMain函数的.后来需要用到这个入口函数,所以自己人工添加了DllMain函数,调试结果就报错,退重复定义DllMain之类的... 从其它地方找到了解决办法,这里给大家分享下: 给项目添加一个dllmian.cpp,里边的内容为 //

在WIN32 DLL中使用MFC库遇到的问题

今天写了一个DLL,DLL中用到的一个类里用到的MSXML的COM组件,所以在DLL中要包含afx.h头文件,也就不可避免的要用到MFC的类库了,但在编译时出现了错误:mfcs42d.lib(dllmodul.obj) : error LNK2005:_DllMain@12 already defined in NetDriverConfig.obj, 在http://topic.csdn.net/t/20010911/10/281452.html 处的贴子里找到了以下回答,试了一个原来是文件里

基于C++中常见编译错误的总结详解_C 语言

在日常编码过程中会遇见各种编译错误,本文对常见的编译错误进行分析总结.(基本的编译错误在这里不列举,后续后持续更新) 1.error c101008a解决方法该错误出现在项目升级过程中会出现,比如说项目从vs2008升级到vs2010.解决办法:在项目上点右键,清理(Clean),重新编译,问题解决 2.error C2252解决方法该错误主要在项目从vs2008升级到vs2010出先.error C2252: an explicit instantiation of a template ca

用phpUnit入门TDD

从一个银行账户开始 假设你已经 安装了phpunit.   我们从一个简单的银行账户的例子开始了解TDD(Test-Driven-Development)的思想.   在工程目录下建立两个目录, src和test,在src下建立文件 BankAccount.php,在test目录下建立文件BankAccountTest.php.   按照TDD的思想,我们先写测试,再写生产代码,因此BankAccount.php留空,我们先写BankAccountTest.php.   <?php class

【原创】libevent使能多线程模式需要做些什么

以下内容基于 libevent-2.0.21 版本  ? 1 2 3 [root@Betty WGET]# tar zxvf libevent-2.0.21-stable.tar.gz ... [root@Betty WGET]# cd libevent-2.0.21-stable 查看当前 config.* 文件有哪些(对于后面执行 ./configure 后新增文件)  ? 1 2 3 4 5 6 7 [root@Betty libevent-2.0.21-stable]# ll confi

wifi详解(三)

1        WLAN驱动结构介绍 1.1      SDIO驱动 在drivers/mmc下面是mmc卡,SD卡和SDIO卡驱动部分,其中包括host驱动,card驱动和core部分,由于网络接口卡挂接在SDIO总线上,所以在此之前我们先看一下SDIO的驱动结构.其驱动在drivers/mmc目录下的结构为:   |-- mmc |   |-- card |   |-- core |   |-- host   主要关注的目录是core目录,这个目录是真个驱动的核心目录,是媒体卡的通用代码部

Linux signal 那些事儿(4)信号的deliver顺序【转】

转自:http://blog.chinaunix.net/uid-24774106-id-4084864.html 上一篇博文提到了,如果同时有多个不同的信号处于挂起状态,kernel如何选择deliver那个信号.        next_signal 负责从挂起信号中选择deliver的signo:当然,有线程显存私有的penging,有线程组共有的pending,对于线程而言,先从自己私有的pending中选,处理完毕私有的才会去处理线程组共有的pending,这个逻辑的代码在: int

数据库之父对实现关系型数据库管理系统的12条建议

数据|数据库 这是数据库之父对实现关系型数据库管理系统的12条建议: Codd's 12 Rules  Dr. E.F. Codd, an IBM researcher, first developed the relational data model in 1970. In 1985, Dr. Codd published a list of 12 rules that concisely define an ideal relational database, which have pro

Oracle GoldenGate 12.2 集成的datapump internal例子

在以前的OGG版本中做oracle的表的初始化工作中, 通常为了捕捉在初始化过程中的数据变化, Source 端会在expdp 前启用extract进程,然后使用expdp 配合flashback_scn参数导出,在Target 端impdp 后,replicat 配置HANDLECOLLISIONS 参数做初始化的工作丢掉"重复或已存在的"更新,或者使用AFTERCSN参数定位的trail 文件中expdp那个时间点的scn ,从那个scn后开始应用变化,  在ogg 12.2 中引