Есть COM server, состоящий из нескольких потоков
Есть отдельный класс, реализующий поддержку Events ( через IConnectionPoint ),
объявленные с использованием DECLARE_CLASSFACTORY_SINGLETON
Клиент Создает объект этого класса и подсоединяется к Events
Сервер, чтобы послать сообщение клиенту, создает объект и вызывает что-то типа Fire_ляляля
Так вот, сообщения доходят до клиента, только в случае, если объект с Events создавался в том же потоке, что и server, в других потоках происходит exception при вызове Invoke внутри метода Fire_ляляля
Вопрос : ПОЧЕМУ?

Насколько я понимаю, необходимо копать в направлении маршаллинга.