I have added the suggested MS registry hack of adding in the EnableOutOfProcBuild, and it did seem to fix my issue when running from the command line - the devenv.com call to build the vdproj succeeds at the command line level. If I run that exact same command embedded in a .proj file from a TeamCity build runner, I get the HRESULT = '8000000A' error, and I have no idea why - shouldn't the results be exactly the same?
I tried running the command via a command line runner, just the raw command, also fails. This is the exact same command that if typed into a command line prompt works. Why would the team city runner fail it?