For latest changes to the 4.624 see 4.624 updates.
Release 4.624 is currently available for 32-bit and 64-bit Windows platforms. The Windows CE set is still being built but has not been tested as yet.
Release 4.624 is the latest release in the 4.62x series of DP4 releases. There have been relatively few changes in functionality since the last official release, 4.622, or the unofficial 4.623 release which had largely supplanted it. Upgrading from and earlier 4.62x release to 4.624 should be fairly simple: with one major exception there is no requirement for customers to rebuild or relink any of their DP4 applications, and there are no incompatibilities that will cause problems if you require to have a "mixed" environment where some machines have been upgraded but others are still running an older release of DP4. However, there have been quite major internal changes to DP4, which have been made necessary by the requirement to support operation on 64-bit versions of Windows, and security features added to Windows Vista and 7, which mean that you cannot freely mix and match components from 4.624 and an earlier release of DP4 as part of a single installation of DP4: although most 4.624 files are compatible with 4.622 and 4.623 there are a few which are not, or which must all be upgraded together if problems are to be avoided.
Release 4.624 is supported on Windows 2000 and later. It has not been tested on any older versions of Windows, although it may well run well on them. It is not supported on Windows XP unless SP2 or SP3 are installed. The DP4 install program will attempt to adjust the set of components that is installed if it detects Windows 95, but this may not be sucessful any more. Release 4.624 is the only recent release of DP4 that will run well on 64-bit machines, and the first release of DP4 that is compatible with machines running Windows Vista or Windows 7 with UAC enabled. (Release 4.623 ran on Vista if UAC and Windows 7 if UAC was disabled). For information about running DP4 on Vista and Windows 7 please refer to A4000036 in the DP4 knowledge base.
DP4 developers are strongly recommended to use the DP4 installation program to upgrade their installation of DP4, and not to copy files directly. The installation program will preserve settings in your DP4.INI and system database but will also apply necessary changes. Once you have created a correct DP4 installation like this you can use it as part of the set of files to be deployed as part of your application using whatever installation producedure is convenient for you. You might like to note that if the environment variable DP4_AUTOINSTALL is set then the DP4 installation program runs without any user intervention whatever. The files install.cfg and filelist.not can be edited to determine what gets installed.
A substantial proportion of support issues relating to DP4 can be traced to customers failing to follow correct procedures when upgrading a DP4 installation to a later DP4 release, so that they end up with a system database or DP4.INI file that is missing required information. That is why you are recommended to use the DP4 installation program.
If your system makes use of QAB then you need to be aware that the format used for storing compiled QAB programs on the database has changed, in order to remove the 64K limit on compiled program size. It is essential that you recompile all your QAB programs, and that you recompile and relink any customised version of progrun you may have built using the latest 4.624 libraries. Failure to do this will leave your QAB programs inoperable. There is effectively no limit on the size of a QAB program now: progcomp uses a default maximum program size of 4MB, but, provide you build a suitable replacement for progrun, you can specify any size up to 1GB or more.
If you have a customised progrun.exe, and for whatever reason you cannot rebuild it, you may continue to use the progcomp.exe from an earlier 4.62x release.
The files syslibt.dll, usrlibt.dll, dp4tray.exe, and win1632d.exe must all come from the same release of DP4. DP4 will not work at all if one but not both of the first two files comes from the 4.624 release. The dp4tray.exe provided with 4.624 requires 4.624 syslibt.dll, as does the win1632d.exe.
Other executable files from 4.624 will work with the 4.623 release, though there should be very little reason to want to do this.
If a database is touched by release 4.623 or 4.624 it will no longer work with release 4.622 or earlier. However the dbrevert tool included from release 4.622 will restore compatibility with the earliest release of DP4 compatible with the database format. There are no differences between 4.623 and 4.624 databases, and only very minor changes from 4.622 to 4.623
Release 4.624 incorporates all the enhancements added to DP4 since 4.622, and incorporates many enhancements to QAB and to the user interface (including calendar controls, browser controls, usability improvements to QAB and Mapedit, and support for opening up to 1024 databases simultaneously).
For more detailed information about the changes to DP4 made in 4.623 and 4.624 please refer to the various "What's New?" pages in the DP4 documentation. These can be conveniently accessed from the "Last Changed" links on the Documentation page of the DP4 Web site. Customers updating from 4.620 or an older release may like to note that the same pages also have links to information about changes in each release from 4.619 onwards. You should refer to the 4.622 release notes for a description of the many major changes to database architecture made in that release.
It is recommended that all databases be converted to use the "Two file index" format with enhanced index compression. Unless space is at a premium you should not enable "Enhanced data compression". The recommended index node size is 1K. Other parameters such as the data sequence and data pointer size should be set to appropriate values for your anticipated database size. Since it is very easy to change these sizes later on using REORGDB (which should be run regularly) it is better to err on the side of being conservative: don't set values such as the data sequence or data pointer size to values above 4 until your database is close to 4 Gig limits. In particular the data sequence size is very unlikely to need to exceed 4. Setting these values to larger than necessary values will have a noticeable impact on disk usage and on performance. For example increasing data pointer size from 4 to 5 will cause the PTR file to grow by 25%.
Many QAB developers have adopted the practice of using the new format for data databases, but have kept program databases in "legacy" format. You are recommended not to follow this practice, but instead to use the same format for all databases. For program databases you may be able to improve performance by setting the data sequence size to 3, or the data pointer size to 3, or the index pointer size to 2. However, you should probably only do this at the time you make a "release" or "gold build" copy of a program database. Using legacy format for the program database may adversely affect performance, not because the database format is less efficient per se (it is, but the difference is unlikely to matter much), but because it forces the database manager to have two sets of functions for accessing and updating the database in memory. When you do this performance will be degraded somewhat because the CPU will not be able to cache code so efficiently, and advanced optimisation features of the CPU such as branch prediction, and branch target prediction will be less effective.