La razón por la que está fallando es que hay otro paso acumulación personalizado en el mismo proyecto que está llamando a un lote archivo, así:
línea de comandos: buildsomething.bat something.h
Descripción: la construcción de algo
Salidas: something.h
Visual Studio 2010 concatena todos los comandos de compilación personalizados en un solo archivo de proceso por lotes, que luego se ejecuta. Cuando un archivo por lotes ejecuta otro archivo por lotes, Windows no devuelve el control al primer archivo por lotes. Es como un goto, no una llamada de función. Así que para solucionar el problema, es necesario utilizar call
así:
línea de comandos: llamada buildsomething.bat something.h
call
hace que el flujo de retorno de control de lotes de Visual Studio archivo y, por lo tanto, permite ejecutar sus otros pasos de Custom Build.
(estoy respondiendo a mi propia pregunta para que los futuros investigadores pueden encontrar la respuesta.)