I'm not sure there is such a thing as a system-supplied standard surrogate process to house a 32-bit OCX as there is for a 32-bit ActiveX DLL that doesn't define controls. For such DLLs containing only classes it becomes a simple matter of some additional steps when registering the ActiveX DLL.

Since those "steps" can be a little exotic to work out if you don't do this a lot, the common workaround is to move the classes to an ActiveX EXE.

So with a DLL surrogate process or an ActiveX EXE, as long as you register in the 64-bit portion of the registry COM handles the thunking between 64-bit clients and your 32-bit servers.

However I have tried to make that work for controls by moving them into an ActiveX EXE.

Here is one old blog post: Accessing 32-bit DLLs from 64-bit code


Sorry to get you excited. I probably mislead you on this, thinking you were talking about a non-control Class.