tfsmsbuildbuild-server

How to find the path to tf.exe from MsBuild


I have an MsBuild file which shells out to TFS using tf.exe for a few things. Unfortunately the tf.exe file has been installed to different locations on the developer PCs and the build server.

I could really do with a way of detecting where the tf.exe file is located within my script in the same way you can do $(MSBuildExtensionsPath32) etc. Is this possible?

Thanks as always :)


Solution

  • Does the environment variable VS100COMNTOOLS point to the correct path for visual studio? E.g. VS100COMNTOOLS=C:\Program Files\Microsoft Visual Studio 10.0\Common7\Tools\

    So then all you need is $(VS100COMNTOOLS)..\IDE

    <Target Name="Build">
       <Exec Command="&quot;$(VS100COMNTOOLS)..\IDE\tf.exe&quot;"/>
    </Target>
    

    or however you want to tidy it up.

    The environment variable changes depending on the version of Visual Studio: