I've analyzed your MSDBuild.cmd batch script and noticed that on the script's OS checking (:winver), Windows 7 is version 7.* while it is version 6.1 and Vista is version 6.* which means that even if you're using Windows 7, it will say that you're using Windows Vista. Also, when I don't want to include some components to be built like Office Update, and ran MSDBuild.exe, it still finds these components and show an error and exit.