Nasser Hadjloo
Nasser Hadjloo

Reputation: 12610

How to create a Batch File for Visual Studio Command Prompt

I want to create a batch file for Visual Studio 2008 x64 Cross Tools Command Prompt to do something continuesly in my PC, here is the senario.

svn update
delete some files
MSBuild MySolutiuon.sln
delete some files
xcopy somefiles
MSBuild AutomateBuildConfiguration.xml /p:Configuration=Release
xcopy some files
delete somefiles
xcopy some files

create a Zip file if it is possible // it is not neccessary

I can do most of it with simple Command Prompt and MSBuild parts with Visual Studio Command Prompt, but as these two prompt are different I cannot complete my senario.

I have tested all command and work great for me, Give me a solution if you know what should I do.

I checked this and didn't underestand anything Thank you in advance

Upvotes: 54

Views: 78581

Answers (7)

Deiveegarajan G
Deiveegarajan G

Reputation: 11

Try below batch file to run the MS test/Nunit test for C# tests.

@echo off
echo Run the CMD(Command Prompt) Program.
echo.
pause
cls
echo Target Framwork
CD C:\Windows\Microsoft.NET\Framework64\v4.0.30319
echo 'Project Path'
msbuild  "C:\Git\ElementsCloud.Tests\Source\ElementsCloud.Tests.sln"/p:configuration=debug
pause
echo 'Project Dll path' and Execute tests
cd C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\TestWindow
vstest.console.exe "C:\Git\ElementsCloud.Tests\Source\Selenium.Tests\bin\Debug\net471\Selenium.Tests.dll" /Tests:Test1,Test2,Test3
echo. 
PAUSE
EXIT

Upvotes: 1

user2226755
user2226755

Reputation: 13159

For Visual Studio 2019 :

call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x86_amd64

Upvotes: 4

sean e
sean e

Reputation: 11925

Make the first line of your batch file set up the VS environment:

call "C:\Program Files\Microsoft Visual Studio 2008\VC\vcvarsall.bat" x86_amd64
svn update
delete some files
MSBuild MySolutiuon.sln
... more commands ...

x86_amd64 is the argument used for x64 Cross Tools Command Prompt.

Once vcvarsall.bat has run, msbuild will be available in the path for the rest of the commands in your batch file.

Alternatively, if you aren't using Visual C++, you might prefer to set up the environment with this line (instead of the call to vcvarsall.bat):

For VS 2008:

call "%vs90comntools%vsvars32.bat"

For VS 2010:

call "%vs100comntools%vsvars32.bat"

For VS 2012:

call "%vs110comntools%vsvars32.bat"

For VS 2013:

call "%vs120comntools%vsvars32.bat"

For VS 2015:

call "%vs140comntools%vsvars32.bat"

For VS 2017:

Batch is now called vc not vs.

call "%vs140comntools%\..\..\VC\Auxiliary\Build\vcvars32.bat"

or better

call "%vs140comntools%\VsDevCmd.bat"

Upvotes: 92

Michael Sander
Michael Sander

Reputation: 2737

For Visual Studio 2015:

call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64

For Visual Studio 2013:

call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64

Upvotes: 21

sam
sam

Reputation: 340

I wrote a bat file using the following steps and it worked.

call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64
echo call complete
pause
cd C:\tfs.sbdinc.com
tf get $/MAC_MBA/CoreApplicationAndReports/Main/Application/Solution /recursive
echo get complete
pause
cd C:\tfs\CoreApplicationAndReports\Main\Application\Solution
msbuild
echo build complete
pause
devenv mba.sln
echo ide launch complete
pause

Upvotes: 1

Good Samaritan
Good Samaritan

Reputation: 706

And for Visual Studio 2012:

call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" x86_amd64

Upvotes: 2

Shane Kenyon
Shane Kenyon

Reputation: 5381

For Visual Studio 2010, this is working great:

call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86

Upvotes: 4

Related Questions