Click here to Skip to main content
15,892,059 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I have a dll (addin to outlook) that is produced in vb. For years I have put it in the addins folder and registered it and away I go but....

on windows 8 PCs it refuses to register

I run a cmd prompt "As Administrator" and then use regsvr32 with the path and I get the error "... was loaded but the call to DllRegisterServer failed with error code 0x80004005"

I had a Windows 8 PC that was upgraded from Windows 7 and the DLL continued to work but, whilst testing, I unregistered it (I believe without error) and I cannot register it on this machine either now

From my searches I can see lots of problems where people receive this error but nothing that suggests how I can identify what the problem is

Any suggestions

Thanks Mike
Posted

1 solution

The article at this link may help resolve this issue.

Error Message When You Run Regsvr32.exe on 64-Bit Windows[^]

The article says to do the following to register a 32-bit DLL on Windows 8.
DOS&
cd \windows\syswow64
regsvr32 c:\filename.dll


It is not very intuitive but the regsvr32.exe in C:\Windows\System32 is for 64-bit DLLs and the regsvr32.exe in C:\Windows\syswow64 is for 32-bit DLLs.
 
Share this answer
 
v2
Comments
phil.o 24-Oct-13 15:17pm    
5'd! This naming nonsense of system folders was induced by the will to ensure backward compatibility with old executables. Still, there should have been some other more intuitive solution ^^
MikeD 2 28-Oct-13 6:19am    
Thanks Mike, unfortunately this didn't make any difference

I don't know if it makes a difference but the dll was produced from vb6. I didn't say initially as it seems to me that a dll format should be consistent and either 32 bit or 64 bit but the source program shouldn't matter. But just in case...
Mike Meinz 28-Oct-13 6:41am    
There are many formats of DLLs. I do not know if a DLL created by VB6 would work in the current Outlook program. You should convert the DLL to VB .NET.
MikeD 2 28-Oct-13 6:54am    
I think the version of Outlook is irrelevant as is outlook itself as my problem is that I haven't been able to register this dll in Windows 8 (or 8.1)

To support this viewpoint the dll works with Outlook 2013 in Windows 7

I will try moving it to .net although I was hoping to find some way of identifying what the error message means and how to debug it as I have a feeling it is a permissions issue in the registry. Which is supported that a PC running windows 7 where the dll was already registered continued to allow the dll to work after the PC was in place upgraded to windows 8. This worked until I un-registered the dll as a test and now cannot register it again
Mike Meinz 28-Oct-13 8:51am    
Is it possible that you are not logged on as an Administrator when you are trying to register the DLL?

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