我发现Visual Studio在尝试构建项目时开始有点痛苦。
基本上作为一个项目,我们中的一些人正在研究Windows 7的64位安装,有些是32位,这使得某些引用需要在不同的地方查看
目前的主要问题是MVVMLight(但我怀疑它是否具体到此)。
所以我们有这样的路径在32位工作正常但64位失败(我也有GalaSoft.MvvmLight.Extras.SL4.dll包括但因为它在同一位置没有包含在这里):< / p>
<Reference Include="GalaSoft.MvvmLight.Extras.SL4">
<HintPath>..\..\..\..\..\Program Files (x86)\Laurent Bugnion (GalaSoft)\Mvvm Light Toolkit\Binaries\Silverlight4\GalaSoft.MvvmLight.Extras.SL4.dll</HintPath>
<HintPath Condition="'$(PROCESSOR_ARCHITECTURE)' == 'x86'">..\..\..\..\..\Program Files\Laurent Bugnion (GalaSoft)\Mvvm Light Toolkit\Binaries\Silverlight4\GalaSoft.MvvmLight.Extras.SL4.dll</HintPath>
</Reference>
我认为这是有条件的问题,但我不确定它应该是什么,因为我不幸地创建了这个并且我对MSBuild不是很熟悉。
答案 0 :(得分:3)
将您的条件更改为“'$(平台)'=='x64'”
您的项目必须放在相对于ProgramFiles的特定文件夹中。这不是个好主意。 您应该为ProgramFiles文件夹使用ProgramFiles环境变量。像这样:
<Reference Include="GalaSoft.MvvmLight.Extras.SL4">
<HintPath Condition="'$(Platform)' == 'x64' or !Exists('$(PROGRAMFILES) (x86)')">$(ProgramFiles)\Laurent Bugnion (GalaSoft)\Mvvm Light Toolkit\Binaries\Silverlight4\GalaSoft.MvvmLight.Extras.SL4.dll</HintPath>
<HintPath Condition="'$(HintPath)' == '' ">$(PROGRAMFILES) (x86)\Laurent Bugnion (GalaSoft)\Mvvm Light Toolkit\Binaries\Silverlight4\GalaSoft.MvvmLight.Extras.SL4.dll</HintPath>
</Reference>