ANSWER:
C:
ActiveX EXE code components. Out-of-process components like ActiveX EXE code components and ActiveX EXE documents use cross-process marshalling to talk to one another, because they each run in their own process space.
Answers in Depth...