Base técnica de addons
Registro manual de DLLs o librerías en a3ERP
Síntoma#
A veces, las librerías de programación a medida no quedan registradas correctamente y, al entrar en la empresa que usa esa librería, aparece un error como este:
Error [EOLE SysError] cargando biblioteca de terceros: El sistema no puede encontrar el archivo especificado, ProgID: "Nombre.Libreria.Com.Escuchador.Dll" Si continúa, perderá la funcionalidad de este módulo. Informe al autor de dicho módulo.
Además, a partir de la versión 14 el sistema puede impedir el acceso a la base de datos hasta que se resuelva el problema.
Problema#
Si la DLL o librería no se registra correctamente en la estación, a3ERP no puede cargarla y se produce el error.
Solución#
Ejecuta en la consola de Windows como Administrador las siguientes instrucciones en cada terminal afectado:
cd c:\windows\microsoft.net\framework\v4.0.30319
regasm /codebase "C:\Program Files (x86)\A3\A3Erp\Extensiones\Sofitec\<ruta_y_nombre_dll>"
Validación rápida#
Después del registro:
- la DLL debe existir en la ruta indicada
- el comando debe haberse ejecutado con permisos de administrador
- a3ERP debe permitir abrir la empresa sin mostrar el
EOLE SysError - la funcionalidad del módulo debe volver a estar disponible
Cuándo aplicar este procedimiento#
- tras copiar manualmente una DLL en la estación
- cuando un instalador no ha completado correctamente el registro COM
- después de migraciones o reinstalaciones de terminal
- cuando aparece el error de carga de biblioteca de terceros al abrir la empresa
Qué revisar si sigue fallando#
- la ruta real de la DLL
- el
ProgIDmostrado en el error - que la consola se haya ejecutado como Administrador
- que se haya repetido el registro en todos los terminales afectados
- si el módulo depende de más librerías adicionales
Nota operativa#
En la mayoría de casos, el problema no está en la base de datos, sino en la estación concreta donde la librería no ha quedado registrada correctamente.