I am having all sorts of problems compiling a large project which has about 40 dlls and 8 ocxs. The ocx's all compile and run fine, bar one.

The offending ocx compiles fine and runs in the project group fine. All dlls that use the OCX also compile fine from the project group. But when I try to compile a single dll standalone, it says it couldn't load the ocx. If I try to paste the ocx onto a new project form, I get an error saying that such and such a GUID has not been registered.

The GUID used to add the ocx to the project is different to the GUID in the error message. A search of the registry reveals that both GUIDs exist. The one in the error message seems to be the correct one and the one used in the projects vbp file is listed as a typelib GUID. Simply replacing teh GUID in the project file leads to a can't load OCX error.

The OCX has been compiled with binary compatibility, but I guess some months ago, maybe I compiled it more than once without binary compatibilty?

Anyway I am in a real pickle. How do I clean up my machine or my project settings to fix this up.
(NB I have tried unregistering everything and and recompiling all from scratch. No cigar.)

Help

Justin