I am currently rewriting a server application that was originally done in VB6. Over the years it has grown and services several different clients with several different needs. In re-writing this server I would like to modularize it a bit.

Is it possible to build the exe where it will reference a dll that may be different for every client so long as the dll name is the same and the procedures called are of the same name, type and parameters?

I have not tried this at all yet and am hoping someone out there knows if it is possible or not before I invest the time to try and code it.

Any tips would be helpful.

The general idea is that my core program will handle all communications. When a transaction arrives it will call a method in this dll which will be responsible for processing the transaction and returning some result in the form of a string. The dll itself may have only one or 2 methods or may have lots of them depending on the needs of the client. When shipped to the client they would get the core exe and a dll that is customized to thier needs assuming it can be done without the need to rebuild the exe for every new client which is currently the case.

Or perhaps there is a better way to address this that I have not thought of yet?