>>Also a gotcha. When you add a reference to another dll you should highlight the reference in you solution explorer and then in the properties sheet there is a property for Copy Local. This controls if the dll gets copied locally when you build. referencing a dll in another location is a good way to do that because it will always be current when you re-build that other project and you should always have the latest and greatest. (or broken).
>
>Good point - guess I should've mentioned that. But 'Copy Local' is the default so it should only be a problem if you change that to false. I guess I should also have mentioned that in my ProjectA/ProjectB/ProjectC scenario above ProjectC will only be copied into the ProjectA bin if ProjectB actually *uses* ProjectC (not simply because ProjectB holds a reference to it) .......
I haven't actually tracked when it is default to true or false since often it is false and I set it to true. I guess I will pay more attention to see what makes it true or false by default. In my very early days of developing with Dot Net I got stung by this because we were using API's for connected devices and my first install missed this. Some of the dll's did not end up in the setup and was hard for me to figure out what was causing my problems. Changing the setting from false to true fixed it but took me awhile to find it.
Tim
Timothy Bryan