【问题标题】:MSBuild Windows Kits 10 error with objidl.idlobjidl.idl 的 MSBuild Windows 工具包 10 错误
【发布时间】:2018-10-27 17:48:31
【问题描述】:

尝试从 TFS2017 服务器使用 MSBuild 15.0 构建我的解决方案,我遇到以下错误:

C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\um\objidl.idl (702, 0) C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\um\objidl.idl(702,0):错误 MIDL2072:不适用的属性:[类型“SNB”(接口“IStorage”)]

和

C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\um\objidl.idl (742, 0) C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\um\objidl.idl(742,0):错误 MIDL2072:不适用属性:[类型“SNB”(参数“snbExclude”)]

我尝试过不同版本的\include、\lib、\bin文件夹如:

  • 10.0.17134.0
  • 10.0.16299.0
  • 10.0.10586.0
  • 10.0.10240.0

无济于事。

非常感谢任何解决此问题的想法或帮助! 谢谢

【问题讨论】:

  • 如果手动远程构建代理,直接使用Visual Studio而不是TFS构建,结果如何?如果问题与您的环境或 TFS 端有关,这将缩小范围。根据错误信息,似乎问题应该与 SDK 更相关。请确保您的本地环境与您的构建代理/服务器环境相同。此外还可以看看这个类似的问题,这可能对你有帮助:developercommunity.visualstudio.com/content/problem/165191/…
  • 我将环境路径设置为 win sdk 6.1 和 windows kits 10,从路径变量中删除 sdk 6.1 解决了这个问题,所以我可以确认该链接中的人所说的内容,仅限目标环境路径中有 1 个 sdk。
  • 很高兴听到问题已解决。似乎我证明的链接对您有所帮助或给出了正确的方向。如果是这样,感谢marking it as an answer,这也将帮助社区中的其他人。已将评论移至答案。

标签: tfs sdk msbuild tfsbuild


【解决方案1】:

首先请确保您的本地环境与您的构建代理/服务器环境相同。

另外,也看看这个类似的问题,这可能对你有帮助:

error MIDL2072: inapplicable attribute : [annotation] [ Type 'SNB' ( Interface 'IStorage' )

尝试使用链接中提到的解决方案:

删除“可执行文件”中旧 SDK 二进制目录的所有引用 目录中的“VC++ 目录”的属性 '微软.Cpp.x64.user';否则错误的(以前的)版本 MIDL 编译器(不理解较新的 SAL/MIDL 语法)将 运行可能会出现错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-07
    • 2018-07-22
    相关资源
    最近更新 更多