I can't wrap my head around the differences among these terms.
Are COM and ActiveX synonyms?
Is ActiveX object just a COM object that exposes IDispatch?
Lots of older MSDN pages mention IDispatch without any COM context. Does it have a separate history, and was just introduced under the COM 'umbrella' later in its lifecycle?
Where does OLE fit in? Is its (considerable) presence in MFC naming and MSDN in general – all just legacy?
Wikipedia gives some insight, but not much. I couldn't find a more in depth reference.