You can make in-process ActiveX DLLs and OCXs and out-of process EXEs. You will do yourself well to actually do a SEARCH and INVESTIGATE this matter. Google is your friend.
Alternatively, ask a very specific question, and I will do my best to answer it.
Nobody knows what software they want until after you've delivered what they originally asked for.
Don't solve problems which don't exist.
"If I had eight hours to cut down a tree, I'd spend six hours sharpening my axe." --- Abraham Lincoln (1809-1865)
My advice is to learn COM(+) first. ActiveX controls are an implementation of the COM philosophy.
"As far as the laws of mathematics refer to reality, they are not certain; and as far as they are certain, they do not refer to reality." - Albert Einstein