Nueva versión de Xailer 2.7

¡¡Nueva versión de Xailer disponible!!

Ya está disponible la nueva versión de Xailer 2.7  que incorpora como principal novedad el soporte completo de Harbour 3.2. De hecho el propio IDE de Xailer ya está construido con Harbour y no con xHarbour.

Hemos querido publicar la nueva versión con soporte de Harbour con absolutamente la misma funcionalidad que se ofrecía la versión de xHarbour, incluyendo el soporte de DLLs, el depurador integrado, soporte de OCX y un largo etcétera. No obstante, está versión de transición soporta igualmente sus actuales proyectos escritos con xHarbour. A partir de la futura versión 3 de Xailer sólo soportaremos Harbour y utilizará el compilador MinGw en vez del de Borland que utilizamos actualmente, lo cual también nos permitirá dar el salto a los 64 bits cuando sea necesario.

Al estar construido el nuevo IDE con Harbour es necesario que todas las DLLs que utilice sean igualmente construidas con Harbour. Este nuevo IDE incorpora todas las DLL de controles (Samples.dll), asistentes y plugins, recompilados con Harbour. Si usted ha creado controles o asistentes propios recuerde que deberá reconvertirlos a Harbour.

Pasar un proyecto a Harbour desde xHarbour, en lo que concierne al IDE, es muy sencillo, tan sólo deberá abrir las propiedades del proyecto e indicar que el proyecto utilizará Harbour en vez de Harbour. Pero además deberá tener en cuenta lo siguiente:

  • Todas las librerías personales que tuviese indicadas en el proyecto se pierden de la configuración y deberá volver a asignarlas
  • Si utiliza librerías personales o de terceros, están deben de ser igualmente recompiladas con Harbour
  • Es necesario reconstruir completamente el proyecto. En caso de no hacerlo recibirá errores de ‘Unresolved external’ en el proceso de enlazado
  • En el caso de que esté utilizando ‘Advantage database server’, la versión para Harbour exige utilizar la versión 10 o posterior
  • Por último y no menos importante, necesita el propio Harbour 3.2 en su máquina

Hemos preparado un instalable con todo lo necesario de Harbour 3.2 para ser utilizado desde Xailer, el cual puede encontrar en la siguiente dirección: http://www.xailer.com/download?es&file=66. Os recomendamos que lo instaléis en el directorio Xailerhb32. Una vez instalado deberéis configurar los directorios de Harbour en el IDE  a través de la opción de menú Herramientas->Opciones generales->Directorios->Harbour.

Con la nueva versión de Xailer observará que todas las librerías del directorio LIB están duplicadas, teniendo las versiones de Harbour las letras ‘HB’ al principio.

Como ya comentamos en anteriores artículos la migración a Harbour no es inmediata ya que Harbour y xHarbour no son completamente iguales y exige importantes cambios en el código fuente de sus proyectos. Cuanto más se haya alejado del estándar CA-Clipper, más serán los cambios que deberá hacer.  Hemos preparado en nuestro Wiki un documento sobre los cambios más importantes que debe realizar para una correcta migración hacia Harbour.

A la pregunta de si debemos cambiar o no a Harbour, la respuesta es un si rotundo, no sólo por el hecho de que las futuras versiones de Xailer sólo soportarán este compilador, sino sobre todo por las grandes ventajas que ofrece Harbour con respecto a xHarbour:

  • Mayor rapidez de ejecución
  • Proyecto mucho más activo
  • Soporte de multitarea completamente operativo
  • Soporte de Unicode
  • Mejor construcción en general

Somos conscientes de que para muchos de vosotros el paso a Harbour puede provocar bastantes reticencias bien por falta de tiempo, miedo o desconocimiento y por ello hemos incluido un nuevo servicio en nuestra oferta de productos que consiste en la migración de sus propios proyectos a Harbour a un precio altamente competitivo que puede animar a muchos de vosotros a realizar el salto, sobre todo teniendo en cuenta de que tendréis el apoyo del equipo de Xailer para cualquier problema que os pudieseis encontrar.  Podéis encontrar más información en el siguiente enlace: http://www.xailer.com/?productos&migracionharbour. En cualquier caso, con o sin nuestra ayuda os animamos a dar el salto cuanto antes pues entendemos que es completamente necesario.

Si desea que sus proyectos sean compatibles con ambos compiladores deberá crear un proyecto para Harbour y otro para xHarbour y después deberá utilizar la compilación condicional para distinguir que código debe compilarse con cada compilador. Recomendamos utilizar el ‘define’ __XHARBOUR__ que encontrará cuando compile con xHarbour para realizar la compilación condicional. Algo así:

#ifdef __XHARBOUR__
   DEFAULT
#else
  OTHERWISE
#endif

Hemos intentando mantener la compatibilidad al máximo entre la versión de xHarbour y Harbour de Xailer, de tal forma que las modificacioens que tenga que hacer para migrar sus aplicaciones sean únicamente debido a las diferencias intrínsecas entre Harbour y xHarbour, y lo hemos conseguido en un 99.99%. Sin embargo, las clases TZipFile y TUnZipFile han sufrido importantes cambios, debido a funcionalidades inexistentes en las librerías de Harbour con respecto a xHarbour, lo que nos ha hecho revisar completamente las clases introduciendo grandes mejoras en las mismas, como es por ejemplo, barras de progreso que funcionen con bytes procesados en vez de con ficheros. En la ayuda de Xailer se le mostrarán claramente las diferencias entre ambas versiones. Le adelanto que si utilizaba ambas clases de una forma muy básica es muy probable que no tenga que cambiar absolutamente nada.

De igual forma, en Harbour se echan en falta algunas clases y funciones que tiene xHarbour que muchos usuarios de Xailer han estado utilizando desde hace mucho tiempo y son las siguientes:

  • Funciones de cifrado:  HB_Crypt() y HB_DeCrypt()
  • Clase TXML
  • Función HB_Base64()

Todos estos módulos se han incluido en una librería de nombre xHarbour.lib dentro del propio instalable de Harbour 3.2. Como no podría ser de otra forma el código fuente de dichos módulos está incluido también en el instalable de Harbour 3.2.

Xailer 2.7 incorpora además otras importantes mejoras como son:

  • Nuevo control TWebDataSource para acceder a cualquier base de datos vía HTTP
  • Soporte de herencia visual de formularios
  • Soporte de proyectos Harbour del tipo .hbp usando hbmk2.exe

Os recordamos que, al igual que ocurrió con la versión anterior, se requiere volver a registrar el producto, ya que ha cambiado la clave de activación. El registro sólo será posible realizarlo en máquinas que estén activas y además la licencia tenga la suscripción igualmente activa.

Podrá comprobar hasta qué versión puede actualizar, consultando su información de registro desde la opción de menú Ayuda->Información de registro.

Para simplificar el proceso de registro para todas aquellas personas que no puedan acceder vía Web al sistema de registro de Xailer, cada vez que se lance una nueva versión todos los usuarios activos recibirán un Email con la clave de registro para todas las máquinas que tienen activas.

No intente actualizarse a esta versión hasta que tenga absoluta certeza de que tiene derecho a recibirla.

Por último recordaros que cuando se publique la futura versión 3 de Xailer, sólo los usuarios que hayán comprado la versión 2 podrán acceder a la actualización. Los usuarios que se quedaron en la versión 1 no tendrán derecho a la actualización y deberán comprar el producto completo.

Un cordial saludo,

[El equipo de Xailer]