这个错误代码的意思应该是“拒绝访问”,网络上到处都给出了解决方案(例如https://stackoverflow.com/questions/3808954/dllunregisterserver-failed-with-error-code-0x80070005)是使用管理员权限打开 cmd。但是,在我的情况下,即使在使用管理员权限打开的 cmd 上也会出现同样的错误(使用https://stackoverflow.com/questions/7985755/how-to-detect-if-cmd-is-running-as-administrator-has-elevated-privileges)。
两个都
regsvr32.exe "C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll"
和
C:\windows\SysWOW64\regsvr32.exe "C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll"
失败并显示相同的错误消息,即给定的模块已加载,但对 DllRegisterServer 的调用失败,代码为 0x80070005。
我尝试监视注册表访问,如下所示http://www.cryer.co.uk/brian/windows/troubleshooting/nt4_dllregisterserver_in_com_failed_0x80070005.htm,但结果列表中根本没有ACCESS DENIED
或结果。ACCDENIED
编辑:我现在甚至尝试过
runas /user:Administrator "regsvr32.exe \"C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll\""
从以管理员身份运行的 cmd 中,但这也会导致相同的错误!
答案1
regsvr32
从提升的命令提示符运行该命令。
从上下文菜单中选择Start > All Programs > Accessories', then right-click
“命令提示符and select
以管理员身份运行”。最后,输入命令。
答案2
错误0x80070005
意味着没有权限访问文件夹或文件(通常是缓存文件)。
转到/Users/Public/Application Data/Package Cache
文件夹并确保那里的文件夹具有正确的权限,否则请删除它们并重新运行。
使用时也一样wine
,例如
chmod -v 755 ~/".wine/drive_c/users/Public/Application Data/Package Cache"/*
否则,请检查日志文件以了解详细信息。