Сделал простейший COM-Server.
В клиентском MFC-приложении запускаю поток — класс, производный от CWinThread. В его InitInstance делаю СoInitialize и пытаюсь получить доступ к своему Server-у, используя SmartPointer-ы. В ответ — сообщение об ошибке (Invalid pointer = 0).При отладке — сообщение что-то типа "MYServer.dll relocated due to collision with Some.dll..."
Если все делать в рамках главного потока программы — все ОК (сообщение о collision). Но мне нужно иметь доступ к COM внутри другого потока.