WHY: "Component cannot be loaded" in VB

This problem occurs when a software installation replaced Richtx32.ocx, which has different versions with the same file name.
The OCA type library cache file relating to another version of the control, generated by Visual Basic, was still in the systems folder. Unregistering and re-registering the control had no effect. Deleting the OCA file cured the problem. Yet another case of Microsoft breaking the rules of COM.

To solve two common problems:

* Compiled Visual Basic programs refuse to run, giving "Unexpected error". The short answer:
Re-install the program which does not run. Many software installation programs supply the runtime program and controls they require. (But ours do not so will probably not be fixed.)
2. Install the VB5 and VB6 runtimes to get the latest runtime and OLE DLLs.
3. Download and register the latest versions of the Common Controls.

* You cannot load a Visual Basic project into the IDE any more. The short answer:
1. Delete all the OCA files on your computer, VB will recreate them as needed.
2. Edit the project files to require Version 1.0 of all the controls.
3. If the errors include "Licence not found", remove the common controls and reinstall VB.

Please check all the items on this page. If the trouble is not resolved we are sorry, but we don't know what to do either. This page is kept up to date with everything we know.
Previous Post
Next Post
Related Posts