Esta publicación le explica cómo agregar comandos de registro y anulación de registro al menú contextual para archivos DLL y OCX en Windows Vista, 7, 8 y 10.
Para registrar un archivo DLL u OCX, normalmente debe ejecutar regsvr32.exe desde un elevado Símbolo del sistema. El registro de archivos DLL del sistema desde un estado no elevado puede provocar un error. Por ejemplo, intente registrar el módulo del sistema JScript.dll desde Inicio, cuadro de búsqueda (es decir, sin elevarlo). Verás el error 0x80004005 o 0x80007005 (“EL ACCESO ESTÁ DENEGADO”) cuando lo haga.
Método 1: registrar archivos DLL a través del menú contextual - verbo "runas"
Para agregar el Registrarse comando en el menú contextual que ejecutará el Regsvr32.exe comando bajo derechos elevados, puede usar el comando especial correr como verbo. Aquí hay un archivo REG que creé, agrega el verbo runas para los tipos de archivo DLL y OCX en las siguientes claves de registro:
HKEY_CLASSES_ROOT \ dllfile \ runas. HKEY_CLASSES_ROOT \ ocxfile \ runas
- Descargar el archivo register_runas.reg y guárdelo en el escritorio.
- Haga clic con el botón derecho en el archivo y elija Combinar.
- Hacer clic sí cuando se le solicite confirmación.
Ahora deberías ver el Registrarse (como administrador) comando en el menú contextual para los tipos de archivo DLL y OCX.
Método 2: configurar Regsvr32.exe para que siempre se ejecute con nivel elevado
Como puede usar el verbo "runas" para un solo elemento, para agregar un comando "Unregister" necesita usar un método diferente al anterior. Aquí hay otra forma de agregar los comandos "Registrar" y "Anular registro" al menú contextual de los archivos DLL, sin usar el verbo "runas".
Este método indica al sistema que siempre ejecute Regsvr32.exe elevado, agregando un AppCompatFlags \ Layers
entrada de registro, e implementa las entradas del menú contextual "Registrar" y "Anular registro" de la forma habitual.
Archivo REG
Editor del registro de Windows, versión 5.00 [HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers] "C: \\ Windows \\ System32 \\ regsvr32.exe" = "~ RUNASADMIN" [HKEY_CLASSES_ROOT \ DllFile \ Shell \ Register] "HasLUAShield" = "" [HKEY_CLASSES_ROOT \ DllFile \ Shell \ Register \ command] @ = "C: \\ Windows \\ System32 \\ regsvr32.exe \"% 1 \ "" [HKEY_CLASSES_ROOT \ DllFile \ Shell \ Unregister] "HasLUAShield" = "" [HKEY_CLASSES_ROOT \ DllFile \ Shell \ Unregister \ command] @ = "C: \\ Windows \\ System32 \\ regsvr32.exe -u \"% 1 \ "" [HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Register] "HasLUAShield" = "" [HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Register \ command] @ = "C: \\ Windows \\ System32 \\ regsvr32.exe \"% 1 \ "" [HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Unregister] "HasLUAShield" = "" [HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Unregister \ command] @ = "C: \\ Windows \\ System32 \\ regsvr32.exe -u \"% 1 \ ""
Copie las líneas anteriores en el Bloc de notas y guarde el archivo con la extensión .reg. Haga doble clic para ejecutar el archivo .reg. Esto agrega los comandos "Registrar" y "Anular registro" al menú contextual de los archivos DLL y OCX.
Para eliminar (deshacer) los comandos Registrar y Anular registro del menú contextual, utilice el siguiente archivo .reg:
Editor del registro de Windows, versión 5.00 [HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers] "C: \\ Windows \\ System32 \\ regsvr32.exe" = - [-HKEY_CLASSES_ROOT \ DllFile \ Shell \ Register] [-HKEY_CLASSES_ROOT \ DllFile \ Shell \ Unregister] [-HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Register] [-HKEY_CLASSES_ROOT \ OcxFile \ Shell \ Unregister]
¡Eso es!
Una pequeña solicitud: si le gustó esta publicación, por favor comparta esto.
Una "pequeña" parte tuya seriamente ayudaría mucho con el crecimiento de este blog. Algunas buenas sugerencias:- Pin it!
- Compártelo en tu blog favorito + Facebook, Reddit
- ¡Tuitealo!