Click here to Skip to main content
15,893,486 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
I was create my finger print application,but it was error,

System.Runtime.InteropServices.COMException: 'Retrieving the COM class factory for component with CLSID {999FD645-CE43-4929-B905-BAA623B5A1E6} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 


this error happen when i write this code


ver = new FlexCodeSDK.FinFPVer();
           ver.FPVerificationID += new __FinFPVer_FPVerificationIDEventHandler(ver_FPVerificationID);
           ver.FPVerificationImage += new __FinFPVer_FPVerificationImageEventHandler(ver_FPVerificationImage);
           ver.FPVerificationStatus += new __FinFPVer_FPVerificationStatusEventHandler(ver_FPVerificationStatus);


What I have tried:

I have to tried ,Install FLexcode sdk client,update .NET Framework version,
Restart my PC ,re import plugin
Posted
Updated 26-Mar-20 21:10pm
Comments
Richard MacCutchan 19-Mar-20 4:02am    
The message is quite clear, some product library, that you are trying to use, has not been registered with the system. Check your code to see where it refers to the mentioned CLSID.
CHill60 19-Mar-20 5:05am    
Also ensure that you do not have a platform clash - are you building for 32bit or 64bit ?
ZurdoDev 19-Mar-20 7:58am    
And please use a proper title so that people can find this easier.

1 solution

Please, follow the instruction: .net - How to repair COMException error 80040154? - Stack Overflow[^]

Quote:


To find the DLL, go to your 64-bit machine and open the registry. Find the key called HKEY_CLASSES_ROOT\CLSID\{681EF637-F129-4AE9-94BB-618937E3F6B6}\InprocServer32. This key will have the filename of the DLL as its default value.

If you solved the problem on your 64-bit machine by recompiling your project for x86, then you'll need to look in the 32-bit portion of the registry instead of in the normal place. This is HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\CLSID\{681EF637-F129-4AE9-94BB-618937E3F6B6}\InprocServer32.

If the DLL is built for 32 bits then you can use it directly on your 32-bit machine. If it's built for 64 bits then you'll have to contact the vendor and get a 32-bit version from them.

When you have the DLL, register it by running c:\windows\system32\regsvr32.exe.


Use appropriate class id!
 
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