日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 芯聞號(hào) > 充電吧
[導(dǎo)讀]今天遇到了一個(gè)問題,在網(wǎng)上尋找解決方案,找了許久沒找到。結(jié)果msdn上立馬找到。 而且作者的分析令人嘆為觀止。做技術(shù)做到見微知著、所有問題都迎刃而解的地步,是在是個(gè)令人向往的境界。?error ?li

今天遇到了一個(gè)問題,在網(wǎng)上尋找解決方案,找了許久沒找到。結(jié)果msdn上立馬找到。 而且作者的分析令人嘆為觀止。做技術(shù)做到見微知著、所有問題都迎刃而解的地步,是在是個(gè)令人向往的境界。?


error ?link 2005 ? ?


Error?24?error?LNK2005:?"void?__cdecl?operator?delete[](void?*)"?(??_V@YAXPAX@Z)?already?defined?in?LIBCMTD.lib(delete2.obj)?uafxcwd.lib
Error?22?error?LNK2005:?"void?__cdecl?operator?delete(void?*)"?(??3@YAXPAX@Z)?already?defined?in?LIBCMTD.lib(dbgdel.obj)?uafxcwd.lib
Error?23?error?LNK2005:?"void?*?__cdecl?operator?new[](unsigned?int)"?(??_U@YAPAXI@Z)?already?defined?in?libcpmtd.lib(newaop.obj)?uafxcwd.lib
Error?21?error?LNK2005:?"void?*?__cdecl?operator?new(unsigned?int)"?(??2@YAPAXI@Z)?already?defined?in?LIBCMTD.lib(new.obj)?uafxcwd.lib

solution ?1 ?: ? ?Force Linker to Link Libraries in Correct Order



When you use the MFC libraries, you must make sure that they are linked before the CRT library is linked. You can do this by making sure that every file in your project includes MsdevMfcIncludeAfx.h first, either directly (#include ) or indirectly (#include ). The Afx.h include file forces the correct order of the libraries, by using the directive:

#pragma comment (lib,"

CRT 是 C運(yùn)行時(shí)庫,上面的意思是在mfc程序中使用到crt函數(shù)時(shí),應(yīng)該讓mfc先于crt鏈接。 這個(gè)一般情況下IDE能幫忙解決,可是有時(shí)程序配置不當(dāng),確實(shí)會(huì)出現(xiàn)這個(gè)問題。 解決方法很簡(jiǎn)單,包含afx.h即可。(當(dāng)然問題是有針對(duì)性的)


solution 2: Locate and Correct the Problem Module

問題的發(fā)生是因?yàn)閏rt提供了new delete dllmain 的弱鏈接,而mfc中也有它們的定義,避免使用它們既可。當(dāng)然這不是好辦法。 所以應(yīng)該在一開始就把程序配置好。

http://social.msdn.microsoft.com/Forums/en-US/ceb90f33-b348-42a7-9e23-a533ba0c7da4/uafxcwdlibdllmodulobj-error-lnk2005-dllmain12-already-defined-in-mytestdllobj

http://stackoverflow.com/questions/3586195/visual-studio-linking-errors-order-in-which-mfc-crt-included

翻譯自msdn --- ? 內(nèi)核對(duì)象命名沖突 : ? ?在處理進(jìn)程和線程的同步問題時(shí), 對(duì)于同步函數(shù)CreateX(mutex, semaphare, event, timer等),如果是非第一次(即,已經(jīng)使用過CreateX )使用且生成同名的object, 則判斷其類型是否相同,如果類型相同,則相當(dāng)于OpenX函數(shù),但是會(huì)生成錯(cuò)誤碼??ERROR_ALREADY_EXISTS; 否則,函數(shù)失敗,?錯(cuò)誤碼?ERROR_INVALID_HANDLE。 。 如,對(duì)于名字為mm的mutex, 第二次調(diào)用createmutex ,相當(dāng)于openmutex;? 但是如果調(diào)用createevent生成名字為mm的事件, 則函數(shù)失敗-- ?因?yàn)樗械膬?nèi)核對(duì)象共享同一個(gè)命名空間。


翻譯自msdn --- ? 應(yīng)該知道, 所有能夠在注冊(cè)表中定位到某一項(xiàng)的函數(shù)都是不安全的,因?yàn)樗鼈兌加锌赡苄薷淖?cè)表。而 如RegQueryValueEx 函數(shù),沒有對(duì)NULL-TERMINATED字符的判斷(也是不安全的), 所有這些需要調(diào)用者充分考慮到; ? ? CRegKey封裝了讀寫(本機(jī))注冊(cè)表的函數(shù),唯有關(guān)閉注冊(cè)表(?CRegKey::Close )?時(shí), 寫入的內(nèi)容才會(huì)被保存,但是這個(gè)過程可能會(huì)花費(fèi)幾秒鐘。RegFlushKey 函數(shù)可以不用關(guān)閉注冊(cè)表就能把注冊(cè)表的改變內(nèi)容寫入到硬盤,但是應(yīng)該慎用,因?yàn)閷懽?cè)表這個(gè)過程畢竟是很耗時(shí)的。??


??

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉