我切换了一些解决方案,以在只有VS2015和buildagent的干净的buildmachine上使用最新的框架和工具集进行构建。
对于所有的vc项目,路径变量“ TargetFrameworkSDKToolsDirectory”都适合我的需求。它看起来像这样:
"$(TargetFrameworkSDKToolsDirectory)tlbimp.exe" $(TargetPath) /verbose /strictref /asmversion=$(Version) /out:$(DropLocation)
但是对于C#项目,我找不到任何解决方案。先前的解决方案如下所示:
"$(WindowsSDKDir)\bin\NETFX 4.0 Tools\tlbexp" $(TargetPath) /out:$(ProjectDir)\bin\$(ConfigurationName)\$(TargetName).tlb
但是buildmachine不知道“ WindowsSDKDir”或“ FrameworkSDKdir”,我希望尽可能少地进行定制。
我无法想象我是唯一遇到此问题的人,所以我希望找到一个已经解决了这一问题的人。
最佳答案
我发现满足我需要的最佳解决方案是在buildmachine上安装Windows SDK并将TargetFrameworkSDKToolsDirectory用于c#和c ++项目。
关于c# - 使用MsBuild(VS2015)构建期间TlbExp/TlbImp的路径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35548112/