一、現象描述 筆者在用visual studio2010進行控制台程式進行程式編譯時候,經常會遇到代碼代碼沒有語法錯誤,但是編譯不通過的現象。系統報錯為 這個錯誤總是出現,特別是在每次新裝系統後,很是煩人。 二、出現原因 通過查閱相關資料可知: 出現該問題的原因通常是由於高版本與低版本之間的鏈接文件 ...
一、現象描述
筆者在用visual studio2010進行控制台程式進行程式編譯時候,經常會遇到代碼代碼沒有語法錯誤,但是編譯不通過的現象。系統報錯為
LINK : fatal error LNK1123: 轉換到 COFF 期間失敗: 文件無效或損壞
這個錯誤總是出現,特別是在每次新裝系統後,很是煩人。
二、出現原因
通過查閱相關資料可知:
COFF文件是指通用對象文件格式(Common Object File Format),是一種比較流行的對象文件格式(區別於傳統C\C++中的*.obj文件)。統一文件格式的出現為混編語言編程帶來了極大的便利。
出現該問題的原因通常是由於高版本與低版本之間的鏈接文件的格式發生變化(例如VS2015與VS2010)或者VS文件安裝不完整等導致的。
三、處理方法
- 修改文件配置
點擊項目屬性->配置屬性->清單工具->輸入輸出->嵌入清單,將後面的是改為否;
點擊項目屬性->配置屬性->鏈接器->清單文件->生成清單,將後面的是改為否;
- 替換cvtres.exe文件
這是由於系統文件發生損壞或者衝突導致的,這時候需要將系統自帶的C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7601.17514_none_ba1c770af0b2031b下的文件替換到Visual Studio中的D:\Visual Studio2010\VC\bin目錄下,即可。
3.其他方法
此外,還可以通過給VS2010打SP1補丁的方式進行解決。這裡不再贅述。