CAPICOM on Windows Server 2008 64Bit: Error 80040154 ('Class not registered')
-
2009年3月18日 10:53Hi,
I have been trying to get a web application which we wrote a while ago working on Windows Server 2008 64Bit (SP1) I have tried this on 3 different servers and I always get the same message:
Retrieving the COM class factory for component with CLSID {8C3E4934-9FA4-4693-9253-A29A05F99186} failed due to the following error: 80040154.
Visual C++ Error Lookup says that this error means 'Class not registered.' I have tried the following steps:
Installing CAPICOM and patching it to version 2.1.0.2.
Registering the dll with regsvr32.
Registering the dll with c:\Windows\SysWOW64\regsvr32.exe.
Installing Windows SDK.
Putting capicom.dll in the same directory as signtool.exe, registering it and adding it to the path.
Running tlbimp capicom.dll /out:Interop.CAPICOM.dll and replacing the Interop.CAPICOM.dll in the app.
I'm now out of ideas. I still get the same error message. Does anyone have any tips on how to get this working?
Thanks,
Joe
全部回复
-
2009年3月18日 11:10版主Your problem is indeed CapiCom.dll. You went about it in the wrong way though, you are registering the 32-bit version. You need the 64-bit version. The 64-bit version of Regsvr32.exe is in c:\windows\system32, syswow64 contains the 32-bit version.
I have this 64-bit DLL on my x64 Vista workstation, located in C:\Program Files\Common Files\Microsoft Shared\CAPICOM\CapiCom.dll. It is registered properly in HKCR\CLSID. It also has the 32-bit version in c:\program files (x86), also properly registered in HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\CLSID.
Hans Passant. -
2009年3月18日 15:37Thanks for your response nobugz. Ive tried registering it with both the 64bit and 32bit versions of regsvr32.exe. I still get the same message.
Joe -
2009年8月17日 14:12Hey Joe..
Do what Hans said plus do the job in a 64bists environment.
ie.
C:\Program Files (x86)\Windows Resource Kits\Tools>
Viggo -
2011年6月17日 23:27
Joe,
have you been able to resolve this problem?
2 years later and there aren't simple answers on the Net..

