2014-08-28 148 views
2

我目前正試圖將我們的C++ mfc解決方案從visual studio 2010升級到visual studio 2013解決方案。當我嘗試構建它時,出現錯誤MSB4018「ResolveComReference」任務意外失敗。我啓用了融合記錄,這就是它告訴我:MSB4018「ResolveComReference」任務意外失敗

=== Pre-bind state information === 
LOG: DisplayName = System 
(Partial) 
WRN: Partial binding information was supplied for an assembly: 
WRN: Assembly Name: System | Domain ID: 1 
WRN: A partial bind occurs when only part of the assembly display name is provided. 
WRN: This might result in the binder loading an incorrect assembly. 
WRN: It is recommended to provide a fully specified textual identity for the assembly, 
WRN: that consists of the simple name, version, culture, and public key token. 
WRN: See whitepaper http://go.microsoft.com/fwlink/?LinkId=109270 for more information and common solutions to this issue. 
LOG: Appbase = file:///C:/Program Files (x86)/MSBuild/12.0/bin/ 
LOG: Initial PrivatePath = NULL 
Calling assembly : Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a. === 
LOG: This bind starts in default load context. 
LOG: Using application configuration file: C:\Program Files (x86)\MSBuild\12.0\bin\MSBuild.exe.Config 
LOG: Using host configuration file: 
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config. 
LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind). 
LOG: Attempting download of new URL file:///C:/Program Files (x86)/MSBuild/12.0/bin/System.DLL. 
LOG: Attempting download of new URL file:///C:/Program Files (x86)/MSBuild/12.0/bin/System/System.DLL. 
LOG: Attempting download of new URL file:///C:/Program Files (x86)/MSBuild/12.0/bin/System.EXE. 
LOG: Attempting download of new URL file:///C:/Program Files (x86)/MSBuild/12.0/bin/System/System.EXE. 

我理解的MSBuild已被移動,但我不明白爲什麼它正在試圖尋找System.dll中的MSBuild的路徑,我怎樣才能使它在適當的位置尋找它?


編輯: 我現在也嘗試升級到的Visual Studio 2012,其工作沒有大的問題,我沒有遇到同樣的問題。但是我注意到,在運行devenv/upgrade(使用vs2013)時,它似乎徹底改變了vC++目錄下的所有內容(升級到vs2012時保持不變)。這可能與這個問題有關嗎?


EDIT2: 試了一下升級到2012年後建造在vs2013項目(不運行devenv的/升級),這也沒有工作,所以我想這個問題是不相關的那...

回答

3

啓用diagonostic構建輸出後,我發現它是3個失敗的COM項目引用加載失敗。刪除這些參考解決了建設問題。這些只在vs2010中顯示爲警告,但由於某些原因導致MSB4018在vs 2013中出現。

0

這是你的問題:

LOG: Appbase = file:///C:/Program Files (x86)/MSBuild/12.0/bin/ 

修正了在構建系統的基礎文件夾,如果你真的需要它指向另一個的Filder。但是,重做您可能會更好地構建系統定位2013,而不是修補2010版本。

+0

直奔微軟網站可能是你最好的選擇。 http://msdn.microsoft.com/en-nz/library/ms252495.aspx – BlamKiwi 2014-09-01 08:21:57

相關問題