卸载项目,然后编辑您的.csproj文件,你会看到一个导入任务
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
MSBuildBinPath = “C:\ WINDOWS \ Microsoft.NET \框架\ v3.5版本” 如果乌拉圭回合工程靶向.NET 3.5
然后去
C:\ WINDOWS \ Microsoft.NET \框架\ v3.5版本\ Microsoft.CSharp.targets在记事本文件
打开此文件,然后搜索AL任务,你会得到这样的事情
<AL AlgorithmId="$(Satellite_AlgorithmId)"
BaseAddress="$(Satellite_BaseAddress)"
CompanyName="$(Satellite_CompanyName)"
Configuration="$(Satellite_Configuration)"
Copyright="$(Satellite_Copyright)"
Culture="%(Culture)"
DelaySign="$(DelaySign)"
Description="$(Satellite_Description)"
EmbedResources="@(_SatelliteAssemblyResourceInputs)"
EvidenceFile="$(Satellite_EvidenceFile)"
FileVersion="$(Satellite_FileVersion)"
Flags="$(Satellite_Flags)"
GenerateFullPaths="$(Satellite_GenerateFullPaths)"
KeyContainer="$(KeyContainerName)"
KeyFile="$(KeyOriginatorFile)"
LinkResources="@(Satellite_LinkResource)"
MainEntryPoint="$(Satellite_MainEntryPoint)"
OutputAssembly="$(IntermediateOutputPath)%(Culture)\$(TargetName).resources.dll"
Platform="$(PlatformTarget)"
ProductName="$(Satellite_ProductName)"
ProductVersion="$(Satellite_ProductVersion)"
ResponseFiles="@(AlResponseFile)"
SourceModules="@(Satellite_SourceModule)"
TargetType="$(Satellite_TargetType)"
TemplateFile="$(IntermediateOutputPath)$(TargetName)$(TargetExt)"
Title="$(Satellite_Title)"
****ToolPath="C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727"****
Trademark="$(Satellite_Trademark)"
Version="$(Satellite_Version)"
Win32Icon="$(Satellite_Win32Icon)"
Win32Resource="$(Satellite_Win32Resource)">
<Output TaskParameter="OutputAssembly" ItemName="FileWrites"/>
</AL>
注意,我chnaged刀具路径到AL我的机器上存在的位置。
默认情况下,它使用$(AlToolPath),不知道这是什么属性的价值,但我相信,如果你收到此错误是没有指向所以正确的位置
简单的话AL任务可以找不到AL.exe,当你编辑并提供ToolPath值时,你可以帮助他找到它。
希望这解释了为什么你会收到此错误消息。
我有同样的问题。由于公司的政策,我无法安装Microsoft Windows SDK,甚至不打算这样做,因为我有Web应用程序(ASP.NET,C#,MVC Framework,i18n)而不是Windows应用程序。此外,我无权编辑注册表项。 – meir 2011-05-20 12:04:48