Hello everyone,

Here is the comments from the book ATL Internals about in-process server considerations,

Any thread that calls CoGetClassObject or CoCreateInstance must already have joined an apartment, or the call will fail immediately. So, does that mean all objects exposed from in-process servers must be equally at home in single-threaded and multithreaded apartments so that random clients isn't cause harm? Fortunately, no.

Does it mean COM client (thread) and COM server no need to be the same type of thread model (e.g. STA, MTA, etc.)?

thanks in advance,