Managing Large VB.NET Solutions


Feb 8, 2006
Programming Experience
I have a Windows Application that has been ported from VB6 to VB.NET using VS 2003. The code conversion was painful but almost complete. But, now I am having trouble because the original application had so many different DLL files associated with it. The application itself is designed to be configurable on what DLLs it uses because it needs to fit into multiple
different HW and SW environments. So, DLLs are loaded dynamically using Activator.CreateInstance and using an XML definition file of the classes/libraries to load. (Used to use CreateObject under COM and VB6).

When I deploy the application I use private assemblies and copy them all to the root directory where the application is installed and everything works
fine. My problem is when I want to debug or test the application I can't just load all of the DLLs into a single solution and build/debug. (There are over 90 project files!). Right now I am batch building using the command line each project file and directing the output to a single directory where I can run from. But this has some severe drawbacks:

1) If someone accidently performs a Rebuild on any single project it will delete all of the existing DLLs in the target directory.

2) If someone removes a reference from a project, the IDE automatically removes all of the DLL files associated with that reference as well.

3) Since I try to build all projects to the same directory I have to remember to set all references to my DLLs to set CopyLocal = False.

The IDE seems to be working against me! Does anyone know of a better way to work with this large number of projects?

Top Bottom