Just a thought on the seperate references folder idea. VS will write all of your binaries (exe's, referenced custom dll's) to the same folder when you build your project. This is the folder specified in the Build properties dialog "Output path" property. The default is "bin\Release\" or "bin\Debug" depending on your build type.
If you want to move your custom dll references to a folder other than the default bin folder when you deploy, you will need to add a configuration file to your app to tell the CLR where to look for it. When the CLR needs to locate an assembly is scans subdirectories in the following order:
AppBase(usually 'bin')\AssemblyName.dll
AppBase(usually 'bin')\AssemblyName\AssemblyName.dll
AppBase(usually 'bin')\privatePath\AssemblyName.dll
Adding a seperate references folder (private path) to hold your referenced custom dll's in your deployed app would require adding a configuration file to the folder your app is running in (AppBase)that would look like:
Code:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="references"/>
</assemblyBinding>
</runtime>
</configuration>
The name of the configuration file has to be the name of the applications main assembly file with a .config extension like:
Main assembly file - Test.exe
Config file- Test.exe.config
Bob