Как создать командный файл для командной строки Visual Studio - PullRequest
44 голосов
/ 04 мая 2011

Я хочу создать командный файл для Visual Studio 2008 x64 Cross Tools Command Prompt, чтобы постоянно что-то делать на моем ПК, вот сенарио.

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

Я могу сделать большую часть этого с помощью простой командной строки и MSBuild parts с помощью командной строки Visual Studio, но так как эти два запроса различны, я не могу завершить мой senario.

Я проверил все команды и отлично работал для меня. Дайте мне решение, если вы знаете, что мне делать.

Я проверил это и ничего не понял Заранее спасибо

Ответы [ 5 ]

74 голосов
/ 04 мая 2011

В первой строке вашего пакетного файла настройте среду VS:

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 - аргумент, используемый для командной строки x64 Cross Tools.

Как только vcvarsall.bat запустится, msbuild будет доступен в пути для остальных команд в вашем командном файле.

В качестве альтернативы, если вы не используете Visual C ++, вы можете настроить окружение с помощью этой строки (вместо вызова vcvarsall.bat):

Для VS 2008:

call "%vs90comntools%vsvars32.bat"

Для VS 2010:

call "%vs100comntools%vsvars32.bat"

Для VS 2012:

call "%vs110comntools%vsvars32.bat"

Для VS 2013:

call "%vs120comntools%vsvars32.bat"

для VS 2015:

call "%vs140comntools%vsvars32.bat"

Для VS 2017:

Партия теперь называется vc, а не vs.

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

или лучше

call "%vs140comntools%\VsDevCmd.bat"
21 голосов
/ 08 января 2014

Для Visual Studio 2015 :

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

Для Visual Studio 2013 :

call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64
4 голосов
/ 11 августа 2012

Для Visual Studio 2010 это прекрасно работает:

call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
2 голосов
/ 10 января 2014

А для Visual Studio 2012:

call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" x86_amd64
1 голос
/ 19 августа 2015

Я написал bat-файл, используя следующие шаги, и он работал.

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
...