Click here to Skip to main content
15,886,873 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
Hi,

I have an application that was written maybe 10 years ago. Runs fine on a xp machine. When I install it on windows 10 it runs but get the following error: retrieving the com class factory for component with clsid failed due to following error: 80040154 class not registered.

The application was written in VB.

I installed older .net versions in a hope it would help but did not. Would I be missing a DLL file and if so is there a way to find out which one I need to register?

Thanks
Fergus

What I have tried:

Installing older .net versions and installed office.
Posted
Updated 22-Jun-22 9:29am
Comments
0x01AA 22-Jun-22 13:55pm    
Your app tries to instantiate a COM class which is not registered. Either...
a.) It is something like a third party component. In this case you need to install it.
b.) It is a COM component of your own app, which will be used finally by your app. In this case there is a chance that your app tries to register the component. Simply start your app one time 'as admin' to give your app a chance to register it's own COM component.

1 solution

In addition to what 0x01AA has said, also check the mode of the DLL: given it's age and target OS it's almost certainly a 32bit DLL - and unless your app is also compiled for 32bit it won't work as you can't mix the two unless the DLL is data only - no code will work, so the class probably won't be registered.

It may be possible to rebuild and install the DLL as 64bit, but that'll depend on the code.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900