[問題] VC++ .RC語系改變造成 LINK ERROR
看板C_and_CPP (C/C++)作者donkeychen (Bad_To_The_Bone)時間13年前 (2013/03/01 11:56)推噓0(0推 0噓 0→)留言0則, 0人參與討論串1/1
※ 引述《donkeychen (Bad_To_The_Bone)》之銘言:
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++
問題(Question):
大家好
這個compile error是我之前遇到的
1>CVTRES : fatal error CVT1100: duplicate resource. type:MANIFEST, name:1,
language:0x0409
1>LINK : fatal error LNK1123: failure during conversion to COFF: file invalid
or corrupt
我之前有po一篇 後來我自己有找到問題
在解決的同時也增加了一些額外的問題
所以po上來跟大家討論分享
這問題我這只發生在build Debug|Win32 或是 Debug|x64
Release|Win32 與 Release|x64 都正常
解決方式
把.rc檔裡面的一個字改掉就可以了
出問題:
========================================================
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENG)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
這邊有內容
#endif // English (U.S.) resources
========================================================
沒問題:
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_UK
這寫法在
http://msdn.microsoft.com/en-us/goglobal/bb688160.aspx
有介紹可以多語系
我從ERROR 上顯示的language 409
去查
http://support.microsoft.com/kb/324097
寫的是
English_United_States 409
我不知道我這樣想對不對
我這程式可能link別的lib裡面有定義了 SUBLANG_ENGLISH_US的東西
剛好跟我定義的衝突 (其實我也只是用VC++自己去產生的ID)
那我把我自己的定義成UK後 這lib裡面沒有UK所以就錯開了
如果是這樣的話該怎麼去debug好呢
我覺得我這次雖然解決了但是很運氣~_~
感謝大家
(前篇是不是不能砍呀 我不太確定砍了會不會違反版規)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.72.248.50
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章