GUI regsvr32 - Registrar librerías (dll, ocx)

Tamaño de letra:

Introducción

Nota: Desde este artículo, al final del mismo, podrás descargar un ejecutable compilado (VB6) con código fuente incluido.

¿Sabes cómo se registra una librería en Windows? Para registrar una librería se hace uso de una herramienta del Sistema Operativo de Windows, que se ejecuta desde la linea de comandos y sirve tanto para registrar librerías y controles ActiveX como para desregistrarlos. Esta aplicación se denomina: RegSvr32 (Microsoft© Register Server) y la puedes encontrar tú mismo en el directorio de Windows => system32 con el nombre de regsvr32.exe. Cuando una librería o control ActiveX se registra, esa información queda guardada en el registro de Windows en lo que se conoce como (dejarme echar un vistazo a mi libro de teoría...): "las subclaves de identificación de clases (CLSID)". En Windows un número CLSID identifica a un objeto o control Active X y sus propiedades. Simplemente busca en el registro de Windows el nombre de una librería que hayas registrado y verás todo esto. La estructura de un número CLSID es: {aabbccdd-eeff-gghh-iijj-kkllmmnnoopp} donde cada par de letras es un número hexadecimal.

Para ver el uso de regsvr32, simplemente en Windows XP vas al menú Inicio de Windows y seleccionas ejecutar. Desde Vista o Windows 7 vas al menú principal y donde pone buscar programas y archivos tecleas ejecutar, verás que arriba de donde escribes se mostrará un programa llamado Ejecutar, debes pulsar en él. Aparecerá una ventana en la que podemos escribir lo siguiente: regsvr32. Por ejemplo una imagen en Windows 7 (lo mismo para XP y Vista):

 

Ejecutar en Windows7

 

Si ahora pulsamos en Aceptar, veremos una ventana similar a esta otra:

 

regsvr32

 

Esa ventana es simplemente de información, no has hecho nada, así que no te preocupes. Para utilizar bien regsvr32 es necesario introducirle una serie de parámetros como muestra la imagen anterior. Es muy sencillo de manejar. Por ejemplo, si yo quiero registrar un ocx que tengo en C:\, hago lo siguiente: voy como he explicado antes a la ventana Ejecutar y escribo en esa caja de texto lo siguiente:

regsvr32 C:\ejemplo.ocx

Si todo ha ido bien, aparecerá una ventana indicándome que el proceso se ha realizado satisfactoriamente. Si queremos desregistrarlo, simplemente en la caja de texto de Ejecutar escribiremos lo siguiente:

regsvr32 /u C:\ejemplo.ocx

Si todo ha ido correcto, aparecerá una ventana indicando que ejemplo.ocx ha sido desregistrado correctamente. Si queremos desregistrarlo y además no queremos que nos muestre un mensaje de confirmación tecleamos lo siguiente:

regsvr32 /u /s C:\ejemplo.ocx

¿Por qué es necesario registrar o desregistrar librerías? puede ser necesario por muchos motivos. Cuando registras una librería le "dices" a Windows dónde se encuentra, su nombre, su número CLSID etc... Windows también te indica si una librería es necesaria por varios programas. Cuando se elimina un programa, muchas veces estos últimos no las desregistran pero SÍ eliminan la librería. Esto provoca que Windows siga pensando que esa librería existe, algo que no es cierto. También puede ocurrir que tengas que actualizar un componente ActiveX que por ejemplo tiene algún error, ¿cómo lo haces? Pues desregistrando el componente antigüo, eliminando el archivo antigüo, pegando el archivo actualizado y registrando el archivo actualizado, este es el paso más común y lógico. Seguramente ya te habrás enfrentado alguna vez a registrar una librería.

 

Interfaz Gráfica (GUI) para regsvr32.exe

Cuando una persona tiene un poco de experiencia, simplemente ejecuta regsvr32 desde la cmd (Intérprete de comandos) y comprueba que es muy fácil utilizarlo, sin embargo, es posible que si hace mucho tiempo que no registras ningún componente se te olvide incluso la palabra regsvr32 y pongas regsvr o regsrv32 o regserver o cualquier otro nombre y después de recordar el nombre, si no tienes mucha experiencia, es posible que no sepas cómo utilizarlo. ¿Podría ser el proceso más sencillo?

 

Imagen de regsvr32 GUI

 

Pues bien, para eso he generado este programa llamado GUI RegSvr32 que sirve para registrar o desregistrar librerías desde la interfaz. El programa simplemente trabaja con regsvr32.exe, registra o no las librerías y componentes ActiveX y tienes la opción de mostrar o no mensaje de confirmación. Es muy sencillo de utilizar para los que no quieren usar linea de comandos. El código fuente que usé para generar este programa lo conseguí hace años en la red y no consigo saber quién fue el autor original, aunque es muy sencillo de programar no quiero que los créditos sean míos ya que lo único que he hecho ha sido compilarlo, añadirle alguna extensión (ya que reconocía solamente .dll) y solucionar un error que se producía con las rutas largas motivo por el cual he usado rutas cortas pero el código original no es mío.

Os dejo el enlace de descarga del ejecutable y del código fuente esperando que te puedan ser útil. Como podrás observar, he dejado los comentarios originales y la verdad no me he esmerado mucho, simplemente buscaba algo para uso particular que quiero compartir:

 

Descarga de los archivos (código fuente y ejecutable compilado):

PD. Sé, como ya alguno me ha dicho, que GUI RegSvr32 no realiza todas las funciones de RegSvr32. Es cierto falta /i /n, pero como he dicho, esta utilidad en principio la hice como ayuda propia para el registro rápido de librerías y de este modo a me sirve. También verás que el código fuente es un tanto chapucero pero no quise modificar y ordenar el original, hice dos arreglos rápidos. Otro punto es que sólo registra .dll y .ocx. ¿Trabajas con más extensiones? Si necesitas más y no tienes compilador coméntamelo.

 

Última actualización: Jueves, 07 Junio 2012
Comentarios  
0 # Alberto 01-01-2024 18:06
Impresionante. Te puedes creer que en 2024 he necesitado tu herramienta? :lol:
+1 # el_pastor 17-10-2023 21:45
de vuelta a xp
0 # Diego 30-09-2021 19:52
Estaria bueno que se agregue al programa, registrar los archivos .TLB con el regasm.exe-
0 # Sebastián Rebolledo 27-01-2021 02:01
Estimado; Como hago para darle permisos de administrador?
0 # karmany 27-01-2021 16:36
Hola, buen día.
Sebastián, en el código no le puse permisos de administrador. Es posible que, por seguridad, pida los permisos de administrador, entonces, la forma de registrar librerías es ejecutar directamente el programa como administrador.

De todos modos, me gustaría actualizar la aplicación porque fue diseñada para Windows XP, Vista y Windows 7 a 32 bits.
0 # Alvaro 27-01-2021 16:45
Se pulsa con el botón derecho del ratón sobre el programa y se elije "ejecutar como administrador"
0 # PEDRO JP 05-03-2020 17:11
QUE BIEN, ME SIRVIÓ
0 # Jacob 03-07-2019 00:22
buenas tardes tengo un problemita que el proceso acordado el Regsvr32 me esta consumiendo todo el CPU necesito ayuda de antemano esperare su respuesta.----- ---
0 # karmany 03-07-2019 03:16
Buenas tardes.
Yo intentaría hacer una limpieza del Sistema.
Antes de nada que esté todo actualizado.
Yo lo siguiente que haría es intentar limpiarlo de posibles virus o malware analizando con tu antivirus y por ej este magnífico programa: www.karmany.net/sistema-operativo/31-windows/236-recuperar-mi-pagina-de-inicio-en-el-navegador

Intenta ver si tienes archivos dañados del sistema, por ej: https://support.microsoft.com/es-es/help/929833/use-the-system-file-checker-tool-to-repair-missing-or-corrupted-system
Si tienes Windows 10, este te permite también sobreescribir nuevamente los archivos de sistema.

Suerte!
+1 # Pedro 09-10-2017 18:55
Espectacular, una solución tan pequeña, sencilla y eficaz. Gracias
+1 # Luis 01-11-2016 18:41
Al momento de registrar un Dll que desarrolle en C# me arroja el siguiente error,

Se cargo el modulo "midll.dll", pero no se enocontro el punto de entrada DllRegisterServer.

Asegurese de que "midll.dll" es un archivo DLL u OCX calido e intentelo de nuevo.

Agradeceria su apoyo

Gracias
0 # jeobel 13-09-2016 17:23
Gracias que bueno tener esta herramienta es mas rápido y cómodo
+1 # Nancy 09-02-2015 07:53
:-) Gracias, me sirvió de mucho y qué bueno que menciones que el código original no es tuyo.
0 # CR 30-07-2014 02:43
MUCHAS GRACIAS ME SIRVIO
+3 # Danilo 27-03-2013 17:32
Gracias por el aporte, me sirvió mucho
+2 # karmany 27-03-2013 18:36
Gracias a ti por tu comentario.
-5 # Carlos 14-01-2013 21:20
Vende tus aplicaciones, codigos fuente y todo articulo digital que quieras aqui http://www.misventasdigitales.com/
+1 # pepe 14-01-2013 21:19
Muchas gracias por la publicacion voy a revisarlo, sabes, tengo una aplicacion que al tratar de registrar una libreria propia en WIN 7 no me deja, sabes si con esto la podria registrar?

Saludos.
+1 # Javier 14-01-2013 22:23
No tienes que tener ningún problema. Yo tengo Windows 7 y lo acabo de probar ahora mismo.
Si tienes problemas, coméntanoslo.
0 # Jorge 02-12-2012 15:22
Gracias, muy bueno
0 # Editor 02-12-2012 17:18
Gracias a ti por tu comentario...
:lol:

No tiene privilegios para responder a los comentarios.


 
Visitas: 8551128