Question

I am using msbuild to build my C# VS solution. I've got an error with a third party control which needs an user interaction for building. I might be able to get it fixed if I changed cruisecontrol configuration to use devenv rather than msbuild.

My question is: Is there any difference in output binaries if I move to devenv? Does both msbuild and devenv produce the same binaries? With the same optimization?

Was it helpful?

Solution

There are obviously differences in the way that the build process gets executed, but ultimately the same CSC C Sharp Compiler (in memory or EXE) with the same options is invoked by either method. Naturally, anything can go wrong if things are not done in exactly the same order, especially if you are using parallel builds, but if the build reliably completes with DevEnv and reliably completes with MSBuild, then you can probably accept them as equivalent.

OTHER TIPS

No differences, but I don't recommend you to move, because devenv.exe within CCNet is running independently, and no user interaction can be done this way either. But, devenv.exe is eating more memory and user resources, while msbuild is faster and integrates with CCNet much better.

I think you should explore this control's documentation, probably it has some build variables which must be initialized to allow skip user interaction?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top