我想运行一个预构建目标,我正在csproj中编写代码。这需要运行tlbimp来生成dll我的项目引用。
我在试着执行tlbimp,但我的错误是找不到它。我是否可以使用msbuild变量或环境变量来推断它的路径?
发布于 2013-11-12 10:50:38
可能没有直接变量,但是可以使用一些内置变量来构造路径。就像在我的机器上一样,我在多个位置都有tlbim.exe:
C:\程序文件(x86)\Microsoft SDKs\Windows\v7.0A\Bin\TlbImp.exe
C:\程序文件(x86)\Microsoft \Windows\v7.0A\Bin\NETFX4.0 Tools\TlbImp.exe
C:\程序文件(x86)\Microsoft \Windows\v7.0A\Bin\NETFX4.0 Tools\x64\TlbImp.exe
C:\程序文件(x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64\TlbImp.exe
C:\程序文件(x86)\Microsoft \Windows\v8.0A\bin\NETFX4.0 Tools\TlbImp.exe
C:\程序文件(x86)\Microsoft \Windows\v8.0A\bin\NETFX4.0 Tools\x64\TlbImp.exe
C:\程序文件\Microsoft SDKs\Windows\v6.0A\Bin\TlbImp.exe
C:\程序文件\Microsoft SDKs\Windows\v6.0A\Bin\x64\TlbImp.exe
我可以使用Windows环境变量为"C:\Program“文件夹使用我想要的Tlbim.exe,如:
"%ProgramFiles(x86)%\Microsoft SDKs\Windows\v8.0A\bin\NETFX4.0 Tools\x64\Tlbimp.exe"
在Msbuild项目中,您必须使用$(var)而不是%var%,因此应该如下所示:
"$(ProgramFiles(x86))\Microsoft SDKs\Windows\v8.0A\bin\NETFX4.0 Tools\x64\Tlbimp.exe"
希望你有这个想法..。
发布于 2014-08-29 09:43:13
使用MSBuild 12 (VS2013),
$(TargetFrameworkSDKToolsDirectory)指点
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\即tlbimp.exe在
"$(TargetFrameworkSDKToolsDirectory)tlbimp.exe"https://stackoverflow.com/questions/19134799
复制相似问题