2013-04-24 9 views
3

Я пытаюсь запустить пакетный файл в событии Post build в Visual studio.Опубликовать событие сборки в VS2012..Running пакетный файл

Реферат Can we execute a .bat file in post build event command line in visual studio? для справки.

Когда я выкладываю линию

xcopy "$(ProjectDir)bin" "$(SolutionDir)Deploy\bin" /S in postbuild 

подводит ожидаемый результат

же линии я положил в летучей мыши и пыталась дозвониться

call "$(SolutionDir)\Deploy.bat" 

или

call "Physical path\deploy.bat" 

Am получение возбужденный кодом 1. Что я здесь делаю неправильно?

Могу ли я указать макросы внутри пакетного файла?

Благодаря

+0

Что вы делаете в 'deploy.bat'? Вы уверены, что у него нет ошибки? Вы пытались включить ведение журнала диагностики из msbuild и посмотреть, даст ли он вам более подробную информацию? – outcoldman

ответ

6

Вы получаете ошибку VS, поскольку она возвратила код выхода, который не равен 0. Это не обязательно означает, что произошла ошибка.

Возвращенный код ошибки означает, что файлы не были скопированы. Эти коды возврата для Xcopy:

  • Выход Код
    • 0 Файлы были скопированы без ошибок.
    • 1 Файлы не найдены, чтобы его скопировать.
    • 2 Пользователь нажал Ctrl + C, чтобы завершить xcopy.
    • 4 Различные ошибки, включая недостаточную память или дисковое пространство, недопустимое имя диска или недопустимый синтаксис.
    • 5 Произошла ошибка записи на диск.

Попробуйте этот код в пакетный файл. Используйте/Y, чтобы вам не приходилось иметь дело с любыми подсказками. Вы можете обрабатывать код возврата 1 с другим действием или просто возвращает 0.

VS Почтовый индекс сборки командной строки:

CALL "$(SolutionDir)"Deploy.bat "$(ProjectDir)bin" "$(SolutionDir)Deploy\bin"

Deploy.bat файл

Xcopy %1 %2 /S /Y

If errorlevel 1 @exit 0

 Смежные вопросы

  • Нет связанных вопросов^_^