I am developing a COM DLL (native unmanaged C++ using Visual Studio 2005). I have the following requirements and I am wondering what technology should I use to achieve my goal?
1. The COM DLL will be used by multiple different applications (processes), and for some COM objects, I want the different processes to share a single copy of data (CoClass object instance), and for some other COM objects, I want the different processes to share a separate copy of data (CoClass object instance).
2. The COM DLL I developed is working passively and providing service to other 3rd party applications when they invoked the DLL. I can not control the applications (can not access or change code). And the only thing I can control is the COM DLL itself. So, the technology I select to use should be transparent to the applications and only need code change in the COM DLL itself.
thanks in advance,