64 bit makinede MSBuild (v4.0) kullanarak bir proje oluşturmaya çalışıyorum. Nedense, MSBuild 32 bitlik bir uzantı yüklemeye çalışıyor ve nedenini anlayamıyorum. Sorunu göstermek için sorunu en küçük kümeye indirdim. Aşağıdaki MSBuild proje dosyasını kullanarak64 bit MSBuild 32 bit uzantıları neden yükleniyor?
:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<Target Name="test">
<Message Text="bin path: $(MSBuildBinPath)" />
<Message Text="extensions path: $(MSBuildExtensionsPath)" />
<Message Text="extensions path (x86): $(MSBuildExtensionsPath32)" />
<Message Text="extensions path (x64): $(MSBuildExtensionsPath64)" />
</Target>
</Project>
bu çıktıyı almak:
Microsoft (R) Build Engine Version 4.0.30319.1
[Microsoft .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation 2007. All rights reserved.
Build started 8/27/2010 9:56:35 AM.
Project "D:\5\test.proj" on node 1 (default targets).
test:
bin path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319
extensions path: C:\Program Files (x86)\MSBuild
extensions path (x86): C:\Program Files (x86)\MSBuild
extensions path (x64): C:\Program Files\MSBuild
Done Building Project "D:\5\test.proj" (default targets).
Build succeeded.
0 Warning(s)
0 Error(s)
Time Elapsed 00:00:00.03
MSBuild besbelli 32bit ve 64bit uzantıları yolu biliyor ve ikili yoldan bu açıkça görünüyor 64-bit MSBuild.exe çalıştırıyorum, ancak bazı nedenlerden dolayı uzantılaryerine Program Files (x86)
yüklenmelidir. Yüklemem gereken bir uzantıya sahip olduğumdan, bu 32 bit/64 bit işleminde doğru bir şekilde yüklenmesi GEREKTİRİR ve yükleme yapmayacaktır (MSBuild, 64 bit işlemle 32bit sürümünü yüklemeye çalışıyor).
Neden?