DllRegisterServer failed with error code 0x80004005 when registering Visual Fox Pro

spottedmahn picture spottedmahn · Jan 14, 2019 · Viewed 7.3k times · Source

When I try to register a Visual FoxPro DLL via an administrator command prompt:

C:\Windows\SysWOW64>regsvr32 C:\_temp\my.dll

on machines that are not mine I get the following error:

The module "c:\_temp\my.DLL" was loaded but the call to DllRegisterServer failed with error code 0x80004005.

For more information about this problem, search online using the error code as a search term.

I am able to register it on mine. How do I get more info as to why it is failing?

Can I use my machine where it does register to back into why it doesn't register on other machines?


I've manually copied MSVCR70.dll into the %systemroot%\SysWOW64 directory on the machine that it won't register on.

I've reviewed the dependencies with https://github.com/lucasg/Dependencies and everything looks good.

dependencies screenshot

Answer

DRapp picture DRapp · Jan 14, 2019

I have typically found and associated 0x80004005 with permissions. Did you try to run the DOS prompt AS ADMINISTRATOR?

Also, VFP is ONLY a 32-bit application/dll, it was never 64-bit support, so you probably need the files in System32, not SysWow64.

Permissions might also need to be confirmed for those USING the dll. Ex: you install with admin permissions to drive

C:\SomePath\YourVFP.dll

Make sure the end-user has permissions to this path/file as well.

Aside from the above points... Do you have the VFP SOURCE code / project to build the DLL?