Ответ 1
Причина, по которой это не удается, заключается в том, что в том же проекте, который вызывает пакетный файл, есть другой шаг пользовательской сборки, например:
Командная строка: buildsomething.bat something.h
Описание: Построение чего-то
Выходы: something.h
Visual Studio 2010 объединяет все пользовательские команды сборки в один пакетный файл, который затем запускается. Когда командный файл запускает другой пакетный файл, Windows не возвращает управление первому пакетному файлу. Это похоже на goto, а не на вызов функции. Чтобы устранить проблему, вам нужно использовать call
следующим образом:
Командная строка: вызов buildsomething.bat something.h
call
возвращает поток управления в пакетный файл Visual Studio и, следовательно, позволяет выполнять другие шаги пользовательской сборки.
(Я отвечаю на свой вопрос, чтобы будущие поисковики могли найти ответ.)