2014-09-30 103 views
2

在64位的Windows 7的機器,我從 http://msdn.microsoft.com/en-us/windows/desktop/aa904949.aspx的msbuild失敗:MSB3086,MSB3091: 「Al.exe工具」, 「resgen.exe」 未找到

安裝了.NET Framework 4.5.1和Windows SDK的Windows 8.1

在嘗試建立一個解決方案,我得到以下錯誤(似乎與):

錯誤MSB3086:任務找不到「Al.exe工具」使用SdkToolsPath「」或註冊表項「HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ v8.0A \ WinSDK-NetFx40Tools-x86「。確保SdkToolsPath已設置,並且該工具存在於SdkToolsPath下的正確處理器特定位置並且安裝了Microsoft Windows SDK

錯誤MSB3091:任務失敗,因爲找不到「resgen.exe」或正確的Microsoft Windows SDK未安裝。該任務是在註冊表項HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ v7.0A \ WinSDK-NetFx35Tools-x86的InstallationFolder值中指定的位置下的「bin」子目錄中查找「resgen.exe」。您可以通過執行以下任一操作來解決問題:1)安裝Microsoft Windows SDK。 2)安裝Visual Studio 2010. 3)手動設置上面的註冊表項到正確的位置。 4)將正確的位置傳遞給任務的「ToolPath」參數。

我嘗試了建議的解決方案(除了安裝VS:不允許在該機器上),在互聯網上發現的許多其他人,如重新安裝SDK,在註冊表中執行一些黑客攻擊,設置環境變量,在項目中添加標籤,嘗試許多命令行切換到的msbuild處理,並且隨後這些線程:

Running MSBuild fails to read SDKToolsPath

Failing Build because it can't find AL.exe

tfs 2012 build task failed because "resgen" was not found

但他們都沒有解決這個問題。

這個問題類似於:

https://stackoverflow.com/q/23655387/1288109

一個沒有答案!

任何建議,將不勝感激!

回答

5

儘管SDK的設置表示它是最新的,但可能並非如此。

http://www.microsoft.com/en-us/download/details.aspx?id=3138

http://www.microsoft.com/en-us/download/details.aspx?id=8279

http://msdn.microsoft.com/en-us/windows/desktop/hh852363.aspx

http://msdn.microsoft.com/en-us/windows/desktop/aa904949.aspx

我只是點: 我終於通過刪除所有已安裝的SDK版本,然後安裝以下,在此爲了解決這個問題可能還有其他一些相關的問題:在安裝上述所有內容之後,我終於有了另外一種的錯誤表示,對於某些項目(定位框架3.0),未指定輸出路徑。它改爲指定爲bin \ release。我用bin \ $(Configuration)替換了它,並且我的解決方案終於建成了。

參見:

https://stackoverflow.com/a/26123890/1288109

相關問題