本來自己的電腦上裝了VS2010,因為開發Cocos2d-x 3.x,是以就在自己的機器上裝了一個VS2012。
但是。這不裝不要緊,debug一下自己原來的程式,結果出現了“error LNK1123: 轉換到 COFF 期間失敗: 檔案無效或損壞”這種錯誤,想想都非常無語。
細緻分析了一下這個問題。原來是微軟的連結檔案的格式變了。
解決方式1:
微軟官方給出的詳細解決方法是給VS2010打SP1更新檔:
<a target="_blank" href="http://www.microsoft.com/en-us/download/details.aspx?id=23691">id=23691</a>
解決方式2:
是嵌入清單的問題。于是對該project以及全部依賴project進行例如以下操作:
右鍵->project屬性->配置屬性-> 清單工具->輸入和輸出->嵌入清單。選擇[否]
1>LINK : fatal error LNK1123: 轉換到 COFF 期間失敗: 檔案無效或損壞
1>CVTRES : fatal error CVT1100: 資源反複。類型: MANIFEST,名稱: 1,語言: 0x0409
這個是因為日志檔案引起的。能夠将
項目\屬性\配置屬性\清單工具\輸入和輸出\嵌入清單:原來是“是”,改成“否”。
或者将
項目\屬性\配置屬性\連結器\清單檔案\生成清單:原來是“是”。改成“否”。
處置方法解釋:
1、如果名目是一個靜态庫,也許說,名目中沒有本質的資源檔案的時候,将嵌入清單改成“否”是可能處置的。
2、如果名目已有了資源檔案。将嵌入清單改成“否”是不行能處置效果的,除非你同一時候把這些資源檔案移除掉。
論斷,確定名目中沒有資源檔案的存在。且把嵌入清單改成“否”可能處置該效果,但這确實也失掉了資源檔案的作用。沒措施。誰讓他是個Bug呢。
本文轉自mfrbuaa部落格園部落格,原文連結:http://www.cnblogs.com/mfrbuaa/p/5414161.html,如需轉載請自行聯系原作者