We have started creating several managed c++ projects that are interdependent (meaning they reference another managed c++ project). Since inception of these libraries we have noticed two significant problems:
1. When performing the pre-build step (implicitly done by VS due to referenced managed c++ project), visual studio does not always copy the compiled assembly from the same build configuration as the project is being compiled with. EG a debug build will copy a compiled release version of the assembly. This is a significant issue because the other build configuration could be out of date. We have to keep cleaning the "other" build configuration to get it to copy the correct assembly file for tlbexport.
2. We are noticing that since using references (as opposed to #using, which is not build-order safe), building our solution from the command line no longer performes the aforementioned prebuild step, and all assembly dependent types cause compile errors thus killing our build process. This process does not fail when compiled through the IDE.

Signature
Geoff Evans
Tools Programmer
Insomniac Games
Christian Benien - 08 Jul 2004 08:16 GMT
Hi Geoff,
I've got the same problem. I cannot build managed C++ projects on the
command line. Have you found a solution?
BTW: our solution for the pre-build step in Visual Studio is to avoid
switching configurations. When we go from debug to release or vice
versa, we switch the configuration and then restart Visual Studio.
This ensures that the correct references are copied.
Christian