@echo OFF bin\Prebuild.exe /target nant bin\Prebuild.exe /target vs2010 setlocal ENABLEEXTENSIONS set KEY_NAME="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0" set VALUE_NAME=MSBuildToolsPath rem We have to use grep or find to locate the correct line, because reg query spits rem out 4 lines before Windows 7 but 2 lines after Windows 7. rem We use grep if it's on the path; otherwise we use the built-in find command rem from Windows. (We must use grep on Cygwin because it overrides the "find" command.) for %%X in (grep.exe) do (set FOUNDGREP=%%~$PATH:X) if defined FOUNDGREP ( set FINDCMD=grep ) else ( set FINDCMD=find ) FOR /F "usebackq tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul ^| %FINDCMD% "%VALUE_NAME%"`) DO ( set ValueName=%%A set ValueType=%%B set ValueValue=%%C ) if defined ValueName ( @echo Found msbuild path registry entry @echo Value Name = %ValueName% @echo Value Type = %ValueType% @echo Value Value = %ValueValue% @echo Creating compile.bat @echo %ValueValue%\msbuild opensim.sln > compile.bat ) else ( @echo %KEY_NAME%\%VALUE_NAME% not found. @echo Not creating compile.bat )