我正在使用msbuild构建我的sln并收到错误消息“找不到'AxImp.exe'已经存在于%Program files(x86)%\ Microsoft sdks \ windows \ v8.1A下。但似乎找到了sdk从v8.0A,输出信息指出错误是在Microsoft.Common.targets文件中(代码见下文)。我没有找到“TargetFrameworkSDKToolsDirectory”的定义,任何人都可以帮助我吗?
环境:没有视觉工作室的winblue(4.5.1 sdk v8.1A)。
<ResolveComReference
TypeLibNames="@(COMReference)"
TypeLibFiles="@(COMFileReference)"
ResolvedAssemblyReferences="@(ReferencePath)"
WrapperOutputDirectory="$(InteropOutputPath)"
IncludeVersionInInteropName="$(IncludeVersionInInteropName)"
KeyContainer="$(KeyContainerName)"
KeyFile="$(KeyOriginatorFile)"
DelaySign="$(DelaySign)"
StateFile="@(_ResolveComReferenceCache)"
TargetFrameworkVersion="$(TargetFrameworkVersion)"
TargetProcessorArchitecture="$(ProcessorArchitecture)"
NoClassMembers="$(ComReferenceNoClassMembers)"
Silent="$(ResolveComReferenceSilent)"
EnvironmentVariables="$(ResolveComReferenceEnvironment)"
**SdkToolsPath="$(ResolveComReferenceToolPath)"**
ExecuteAsTool="$(ComReferenceExecuteAsTool)"
MSBuildArchitecture="$(ResolveComReferenceMSBuildArchitecture)"
ContinueOnError="$(ContinueOnError)">
<**ResolveComReferenceToolPath** Condition="'$(ResolveComReferenceToolPath)' == ''">$(**TargetFrameworkSDKToolsDirectory**)</ResolveComReferenceToolPath>
答案 0 :(得分:6)
取决于您定位的版本和平台,但最新版本为C:\Program Files (x86)\MSBuild\12.0\Bin\Microsoft.NetFramework.CurrentVersion.props
,请关注您的导入,即<Import Project=".targets" />
。要获取值,请使用/v:diag
运行MSBuild,并且将转储所有已评估的属性并开始。
答案 1 :(得分:1)
最终为我工作的是安装:
适用于Windows 8的Windows软件开发工具包(SDK)
即使我在寡妇服务器2016上
https://developer.microsoft.com/en-us/windows/downloads/windows-8-sdk
我猜错了:
C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets(2428,5):错误MSB3086:任务找不到&#34; LC.exe&#34;使用SdkToolsPath&#34;&#34;或注册表项&#34; HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ v8.0A \ WinSDK-NetFx40Tools-x86&#34;。确保已设置SdkToolsPath,并且该工具位于SdkToolsPath下正确的处理器特定位置,并且已安装Microsoft Windows SDK