Тема уже обсуждалась, там цепочка msi. После отработки первого msi, start /wait думает, что все закончилось, и передается управление следующей команде, которая работает параллельно с установкой следующего msi. Вот мой рецепт "временного" решения:
http://forum.oszone.net/post-702964-22.html