PDA

View Full Version : Make VS.NET action not obeying "Copy Local" setting of referenced assemblies


JonathanMurray
07-05-2007, 11:49 AM
Hi all,

We are experiencing a problem with the “Make VS.NET” action of Visual Build where it does not copy some of the referenced assemblies for certain projects in our C# solution even though "Copy Local" is set to True for all those references.

When we build the solution with Visual Studio 2005 the output bin directory for the project correctly contains the projects’s own DLL and all referenced DLL's (as well as their own references).

But when we build the solution using Visual Build's "Make VS.NET" action, it builds successfully but only outputs the projects’s own DLL and some of the refrenced DLLs (and their sub-references), but some of the referenced DLLs are not copied to the output bin directory at all.
We also have a case where a referenced DLL is copied but some of it's sub-references are not.
We have another case where another project in the same solution is referenced with copy local but it's DLL does not get copied to the refering project's own output bin.

I cannot find any setting in the Visual Build action definition that would change this behaviour from what is expected. It is also puzzling why some of the Copy Locals are done. On what basis might it making the exclusions?

It all works fine when built in Visual Studio 2005.
Can anyone perhaps shed any more light on this for us?

Thank you,

Jonathan Murray

kinook
07-05-2007, 12:05 PM
It sounds like an issue with Visual Studio when building from the command line (what the Make VS.NET action ultimately invokes to actually build a solution or project). You can verify this by checking the 'Display command-line...' checkbox on the Options tab, rebuilding the step, then copying and pasting the msbuild/devenv command-line from the build output to a Command Prompt and running it from there. If it occurs outside of VBP, you'll need to open a support incident with MS. Otherwise, we'll need a reproducible case to investigate further, including:
1) The info from Help | About | Install Info
2) The .bld file used to build
3) A build log file
4) A .sln file and project files (no source code files)

Also, building with devenv (select 'devenv' in the Override field on the Options tab) rather than msbuild will tend to perform a build that more closely resembles what the VS2005 IDE does when building and may help.
http://www.visualbuild.com/Manual/vsnetoptionstab.htm
http://www.google.com/search?q=msbuild%20%22copy%20local%22