New Xailer version available!!
The new Xailer 2.7 version is already available. Includes full support of Harbour 3.2. In fact the IDE itself is already built with Harbour.
We wanted to publish this new version with Harbour support with absolutely the same functionality that is offered on the xHarbour version, including DLLs support, the integrated debugger, OCX support and so on. However, this transition version also supports all your current xHarbour projects. Starting with the upcoming version 3 of Xailer we will only support Harbour and we will use only the MinGW compiler instead of the actual Borland, which also allow us to make the jump to 64-bit when necessary.
Being the new IDE built with Harbour is necessary that all DLLs should also be constructed using Harbour. This new IDE incorporates all DLL controls (Samples.dll), wizards and plugins, recompiled with Harbour. If you have created your own controls or assistants Remember to reconvert them to Harbour.
Moving a project from xHarbour to Harbour, with respect to the IDE, is very simple, you only need to open the project properties and indicate that the project will use Harbour instead of xHarbour. But you must also take into account:
- All your personal libraries indicated in the project settings are lost and need to re-assigned
- If you use personal or third party libraries they must be recompiled with Harbour
- You need to completely rebuild the project. Failure to do so will receive error ‘Unresolved external’ in the linking process
- In case you are using ‘Advantage Database Server’, the Harbour version requires its version 10 or later
- Last but not least, you need the very Harbour 3.2 on your machine
We have prepared an installer with everything needed to Harbour 3.2 to be used from Xailer, which can be found at the following address: http://www.xailer.com/download?es&file=66. We recommend that you install it on hb32 undex Xailer directory. Once installed you will have to configure the directories in the IDE via the menu option Tools-> General Options-> Directories-> Harbour.
With the new version of Xailer notice that all the libraries in the LIB path are duplicated, versions for Harbour have the letters ‘HB’ at first.
As we discussed in previous articles Harbour migration is not immediate because Harbour and xHarbour are not completely equal and requires major changes to the source code of your projects. The more far you are from the CA-Clipper standard, the more changes will have to be done. We have prepared a document on our Wiki with the most important changes that must be followed for proper Harbour migration.
When asked whether to change or not to Harbour, the answer is a resounding yes, not only by the fact that future versions of Xailer will only support this compiler, but also because of the great advantages with respect to xHarbour:
- Greater speed
- Much more active project
- Multithread support completely usable
- Unicode support
- Best overall construction
We realize that for many of you the jump to Harbour may pose considerable reluctance either for lack of time, fear or ignorance and so we have included a new service in our product list to help you to migrate your own projects to Harbour with a highly competitive price that can encourage many of you to make the jump, especially considering that the Xailer team will be there to support you for solving any problems you may have. You can find more information at the following link: http://www.xailer.com/?products&harbourmigration. In any case, with or without our help we encourage you to make the jump sooner because we believe it is absolutely necessary.
If you want your projects to be compatible with both compilers you must create a project for Harboour and another for xHarbour. Use conditional compilation to distinguish the code that must be compiled with each compiler. We recommend to use the ‘define’ __ XHARBOUR__ that will be present when you compile with xHarbour. Something like this:
We have tried to maintain full compatibility between the version of Xailer for xHarbour and Xailer for Harbour, so to modifications that have to be done to migrate your applications are solely due to the intrinsic differences between Harbour and xHarbour, and we succeeded by 99.99%. However, classes TUnZipFile TZipFile have suffer significant changes due to missing features in Harbour respect to xHarbour, which has made us to completely revise the classes introducing great improvements at the same time, as for example, bars progress work with bytes instead of files. In Xailer documentation you will clearly see the differences between the two versions. In case you have used this classes on a very simply way is most likely that you will not need to change anything on your code.
Similarly, in Harbour are missing some classes and functions of xHarbour that many Xailer users have been using for a long time and are as follows:
- Encryption functions: HB_Crypt() and HB_DeCrypt()
- Class TXml
- Function HB_Base64()
All these modules are included in a library of name xHarbour.lib also included on our Harbour 3.2 installer. Of course the source code of those modules is also included on the install program.
Xailer 2.7 also includes other major enhancements including:
- New TWebDataSource class to access any database through HTTP
- Visual form inheritance
- Support for for native Harbour projects (.hbp) using hbmk2.exe
We will like to remember, as it happened with previous versions. That this version requires a a new registration because there is a change on the activation key. This register process can only be done on active machines with active subscriptions.
You can check until which version of Xailer you can upgrade from the IDE menu option Help->Registry information.
To simplify the process for all those people that can not reach our registry web system, we will send by Email the new registry values for all the active machines on active subscriptions.
Do not try to upgrade to this new version until you are completely sure you are allowed to do it.
Finally remind you that when the future Xailer version 3 Xailer is published, only users who purchased version 2 will be able to access to the update. Users who stayed in version 1 are not eligible for the upgrade and must purchase the full product.