DllRegisterServer falla con 0x80070005 incluso en cmd abierto como administrador


12

Se supone que este código de error significa 'Acceso denegado', y la solución dada en todas partes en la red (por ejemplo, /programming/3808954/dllunregisterserver-failed-with-error-code-0x80070005 ) es abrir un cmd con derechos de administrador. Sin embargo, en mi caso, el mismo error ocurre incluso en un cmd abierto con derechos de administrador (probado con las respuestas en /programming/7985755/how-to-detect-if-cmd-is-running- como-administrador-tiene-privilegios elevados ).

Ambos

regsvr32.exe "C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll"

y

 C:\windows\SysWOW64\regsvr32.exe  "C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll"

falla con el mismo mensaje de error, que el módulo dado se cargó pero la llamada a DllRegisterServer falló con el código 0x80070005.

Traté de controlar los accesos de registro como se da en http://www.cryer.co.uk/brian/windows/troubleshooting/nt4_dllregisterserver_in_com_failed_0x80070005.htm , pero no existen ACCESS DENIEDo ACCDENIEDresultado en absoluto en la lista resultante.

Editar: ahora incluso he intentado

runas /user:Administrator "regsvr32.exe \"C:\Program Files (x86)\GitExtensions\GitExtensionsShellEx64.dll\""

desde dentro de un cmd que se ejecutó como Administrador, pero que también genera el mismo error.


Si mueve el archivo a una carpeta no protegida, ¿funciona?
Ramhound

@Ramhound Desafortunadamente sí, lo mismo sucede donde pongo los archivos dll.
sundar - Restablecer Monica

use ProcessMonitor en lugar de regMon para monitorear la actividad.
magicandre1981

@ magicandre1981 Sí, leí que regmon se había fusionado con procmon, así que eso es lo que usé. Hice un filtro para observar solo regsvr32.exe para filtrar el (toneladas de) ruido, y también hice que mostrara solo los cambios en el registro. Hubo muchos resultados de ÉXITO, REPARACIÓN y NOMBRE NO ENCONTRADOS, pero ningún ACCESO NEGADO.
sundar - Restablecer Monica

Respuestas:


11

Ejecute el regsvr32comando desde un símbolo del sistema elevado.

Seleccione Start > All Programs > Accessories', then right-clickSímbolo del sistema and selectEjecutar como administrador` en el menú contextual. Finalmente, escribe el comando.


44
¿Y si el error persiste ...?
bigp

@bigp quizás entonces las entradas en el registro ya están eliminadas o de alguna manera defectuosas
serup

0

El error 0x80070005significa Permiso denegado para acceder a las carpetas o archivos (generalmente archivos de caché).

Vaya a la /Users/Public/Application Data/Package Cachecarpeta y asegúrese de que las carpetas tengan los permisos adecuados; de lo contrario, elimínelas y vuelva a ejecutarlas.

Lo mismo cuando se usa wine, por ejemplo

chmod -v 755 ~/".wine/drive_c/users/Public/Application Data/Package Cache"/*

De lo contrario, verifique el archivo de registro para obtener más detalles.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.