IFAIK, this is how apartments are implemented and this comes from
Windows 3.1.
That's what I was thinking, but I found an article from 1994 claiming that ole would be shortly moving to the DCE RPC protocol instead of using window messages (and so they did).
I guess they didn't purge window messages entirely.
I think MS was under the impression (not sure if it's correct or not) that RPC is much slower than window messages. I'm pretty sure this is true, but it may not be if there are optimizations in RPC to handle non-cross process calls using some faster form of in-process communication. It may just be slower for initialization (CreateInstance) and finalization (Release()) of proxies and thus objects.
Kelly