1

VS2010と2012の両方で.NET2.0を使用してVBプロジェクトを構築することに問題はありません。

ただし、MSBuildは、VS 2010で導入された1つのVB言語機能が気に入らないため、ビルドを拒否します(より具体的には、「暗黙の行継続」です)。

MSBuild(.NET 3.5から)の次のパラメーターを試しました。

/p:TargetFrameworkVersion=2.0
/toolsversion:3.5

私が使用しているVB機能は4.0ツールで導入されているため、これはビルドされません。

そこで、toolsversionを4.0に変更しました(そして.NET 4.0からMSBuildを使用しました):

/p:TargetFrameworkVersion=2.0
/toolsversion:4.0

そして今、MSBuildは別のことについて不平を言っています:

C:\Users\Libor\AppData\Local\Temp\.NETFramework,Version=2.0.AssemblyAttributes.vb(6,24):
error BC30002: Type 'System.Runtime.Versioning.TargetFrameworkAttribute' is not defined.
[project.vbproj]

私にとって現在の唯一の解決策は、VS 2008でプロジェクトを開き、すべてのツールと互換性があるようにコードを手動で修正することです。ただし、VSは.NET 2.0に対してもプロジェクトをビルドできるため、MSBuildを適切にビルドできるように構成できることを願っています。

4

1 に答える 1

1

ここで同様の質問と回答。それらの鍵は次のようになります。

msbuild YourSolution.sln /tv:4.0 /p:TargetFrameworkVersion=v2.0
于 2012-10-16T20:00:29.267 に答える