Quantcast
Channel: Visual Studio and tools – The Wiert Corner – irregular stream of stuff
Viewing all articles
Browse latest Browse all 239

Batch file: Finds the location of xsd.exe by running the vsvars32.bat of the youngest installed Visual Studio

$
0
0

Boy, Microsoft made it hard to find the location of xsd.exe!

It is actually located like here:

C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\xsd.exe

But that is nowhere on the default path, nor in the registry.

What happens during installation of Visual Studio and/or the Microsoft SDK, is that the vsvars32.bat file of Visual Studio is updated so it can add the location of many tools (including xsd.exe) to the PATH.

So the trick is to find the youngest Visual Studio first, then run the according vsvars32.bat, and then xsd.exe is on the path.

–jeroen

via:

Code:

  :: Dynamically finds the installed xsd.exe, then calls it with the passed parameters

  :: test these environment variables that have 110 or 120 in them (future enhancements: support more Visual Studio versions):
  :: VS110COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\
  :: VS120COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\
  :: They contain `vsvars32.bat` which will update the `PATH` so it includes where `xsd.exe` resides
  setlocal enabledelayedexpansion
  :: delayed expansion allows for the exclamation marks
  :: see http://ss64.com/nt/delayedexpansion.html
  :: see http://stackoverflow.com/questions/22857407/windows-batch-how-to-assign-variable-with-dynamic-name
  for %%v in (110 120) do set VSCOMNTOOLS=!VS%%vCOMNTOOLS!
  call :do call "!VSCOMNTOOLS!vsvars32.bat"
  call :do where xsd.exe
  xsd.exe %*
  endlocal
  goto :eof

:do
  echo %*
  %*
  goto :eof

Filed under: .NET, .NET 2.0, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 2.0, C# 3.0, C# 4.0, C# 5.0, C# 6 (Roslyn), Development, Software Development, Visual Studio 11, Visual Studio 2010, Visual Studio 2013, Visual Studio 2014, Visual Studio and tools, XML/XSD, XSD

Viewing all articles
Browse latest Browse all 239

Trending Articles