[英]DllRegisterServer failed with error code 0x80004005
When I try to register a Visual FoxPro DLL via an administrator command prompt: 当我尝试通过管理员命令提示符注册Visual FoxPro DLL时:
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. 已加载模块“ c:\\ _ temp \\ my.DLL”,但对DllRegisterServer的调用失败,错误代码为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. 我已经将MSVCR70.dll
手动复制到了不会注册的机器上的%systemroot%\\SysWOW64
目录中。
I've reviewed the dependencies with https://github.com/lucasg/Dependencies and everything looks good. 我已经通过https://github.com/lucasg/Dependencies审查了依赖性,一切看起来都很好。
I have typically found and associated 0x80004005 with permissions. 我通常发现0x80004005并将其与权限相关联。 Did you try to run the DOS prompt AS ADMINISTRATOR? 您是否尝试过以管理员身份运行DOS提示符?
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. 另外,VFP仅是32位应用程序/ dll,从来没有64位支持,因此您可能需要System32中的文件,而不是SysWow64。
Permissions might also need to be confirmed for those USING the dll. 对于使用dll的用户,可能还需要确认权限。 Ex: you install with admin permissions to drive 例如:您以管理员权限安装
C:\\SomePath\\YourVFP.dll 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? 除了上述几点之外,您是否还具有VFP SOURCE代码/项目来构建DLL?
Based upon the comment from Tamar , I searched the registry for this DLL on a machine where I could register it and I found {CLSID}\\Foxruntime\\VFP7R.DLL
. 根据Tamar的评论,我在可以注册该计算机的计算机上的注册表中搜索了此文件,并发现了{CLSID}\\Foxruntime\\VFP7R.DLL
。
I installed the VFP 7 Runtime from here (github.com/VFPX/VFPRuntimeInstallers) and I was able to register the DLL 😊 我从这里(github.com/VFPX/VFPRuntimeInstallers)安装了VFP 7 Runtime,并且能够注册DLL😊
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.