2014-04-25 23 views
6

我有一個WPF應用程序靶向.NET 4.0 我使用Microsoft.Expression.Blend.dllMicrosoft.Expression.Blend在一個WPF應用程序靶向.NET 4.0

每次我建我得到幾個警告,看起來像這樣:

The primary reference "Microsoft.Expression.Blend, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=x86" could not be resolved because it has an indirect dependency on the .NET Framework assembly "Microsoft.Build.Engine, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" which has a higher version "12.0.0.0" than the version "4.0.0.0" in the current target framework. 

或者這樣:

The primary reference "Microsoft.Expression.Blend, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=x86" could not be resolved because it has an indirect dependency on the assembly "Microsoft.Expression.DesignHost, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" which was built against the ".NETFramework,Version=v4.5" framework. This is a higher version than the currently targeted framework ".NETFramework,Version=v4.0". 

我能做些什麼,使這些警告會消失嗎?我可以找到版本,例如Microsoft.Expression.Interactions目標.net 4.0,但不混合。

幫助!

+0

這聽起來就像是同一個問題: http://stackoverflow.com/questions/9394299/indirect-dependency-on-the-net-framework-assembly –

+0

什麼版本的Visual Studio您使用的? –

+0

我的應用程序面向.NET 4.0。我不明白這個問題是如何幫助或者是相關的。除非你說我不能在4.0中使用Blend? – Julien

回答

4

我已經複製了VS2012和VS2013下針對.NET 4.0的新WPF項目的問題。

這可能不是您希望的答案,但從我所看到的情況來看,Microsoft.Expression.Blend.dll不是Microsoft Expression SDK的一部分,因此未獲得重新發布許可。因此,我不認爲你想要做的事情是由微軟支持的。然而,它可能在.NET 4.5下運行...

用於.NET 4.0的Microsoft Expression SDK位於「Program Files(x86)\ Microsoft SDKs \ Expression \ Blend.NETFramework \ v4.0」下。根據Redist自述文件,「庫」,「模板」和「程序文件(x86)\ MSBuild \ Microsoft \ Expression \ Blend.NETFramework \ v4.0」下的文件被許可進行重新分發。 Microsoft.Expression.Interactions.dll位於Libaries文件夾下,這意味着它被授權進行重新分發,並且這也解釋了爲什麼它可以工作。

不幸的是,Microsoft.Expression.Blend.dll不在任何這些文件夾中。它位於「Program Files(x86)\ Microsoft Visual Studio 12.0 \ Blend \」中,它向我表明它是Blend for VS2013(應用程序,而不是SDK)的一部分,它主要基於.NET 4.5。由於這個dll依賴於.NET 4.5程序集,因此我認爲它無法在定位.NET 4.0時運行。

我會建議重新考慮你使用這個程序集。您尚未解釋您嘗試從中使用哪些功能,但由於它不是Express Blend SDK的一部分,因此您將其用於定位.NET 4.0並不適用。

相關問題