Travis, who works with me, sent out a useful Gotcha today that was too useful to not blog.
We have a VM that requires the Host OS to use the Microsoft Loopback Adapter in order to create an internal subnet that is local to that machine. It keeps the VM sequestered.
However, due to the way the Loopback Adapter works, Visual Studio Web Setup Projects (MSIs) will fail. To fix it, disable the Loopback Adapter, run the install, then enable the adapter.
(The problem is that, on install, the installer looks at the path it's going to install to and it comes back like http://machinename/http://machinename/targetpath <http://machinename/http:/machinename/targetpath> - note the looping back going on there. The installer doesn't like that.)
Interesante, but that's what you get when you do unusual stuff, eh?