vs2010+轉換到 COFF 期間失敗: 檔案無效或損壞
之前一直用VS2015,最近公司用到VS2010,正確的程式碼執行時忽然出現“轉換到COFF 期間失敗:檔案無效或損壞”的連結錯誤。試了好多方法,最終解決了這個問題。
現在羅列一下這幾種解決方案:
方案1:
點選“專案”-->“屬性”--> “清單工具”,
然後選擇"輸入和輸出’--> ‘嵌入清單’,將後面的‘是’改成‘否’就可以了
但是我採用著這種方法後,普通的控制檯程式沒有問題,但是MFC或別的程式還是會出現一樣的問題。
方案2:
在VS安裝目錄搜尋cvtres.exe
發現有兩個cvtres.exe檔案,有的網友選擇用最新的檔案覆蓋掉所有舊的cvtres.exe,也有網友是刪除舊cvtres.exe的檔案。我是將舊cvtres.exe 改名字了,以備恢復環境。注意這兩個檔案都是一個版本號,但是生成時間只是相差1個小時,選擇最新的那個。也有搜尋到好多cvtres.exe的 情況,這個就不清楚了,試試如何刪除這些檔案吧。我的兩個檔案目錄如下:
D:\ProgramFiles (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64
D:\Program Files (x86)\Microsoft VisualStudio 10.0\VC\bin
方案3:
就是安裝新的VS2010 SP1,這種方法也可以解決部分這種問題。
比較麻煩的是這個SP1還比較大,亂七八糟的東西都得補丁上去。
方案4:推薦
我覺得這是最好最徹底的方法:
將C:\Windows\WinSxS\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_10.0.17134.1_none_a2b67be9cb145c7a目錄下的cvtres.exe複製一份,覆蓋vs2010安裝目錄bin下的cvtres.exe,我的目錄是D:\ProgramFiles (x86)\Microsoft Visual Studio 10.0\VC\bin\,問題完美解決,本人就是採用這種方法。