The DP4 configuration file is divided into sections, each relating to a particular program or type of information. The sections are identified by headings enclosed in square brackets, e.g. [TRMW].
This help document describes the contents of the DP4 configuration file, beginning with the [TRMW] section which relates to the DP4 terminal manager. The other sections follow in alphabetical order, although issued DP4 configuration files do not necessarily follow this pattern.
The entries that are described in this guide are the only ones whose values may safely be updated by a user. In some DP4 configuration files you may find sections that are not documented in this guide. You may also find undocumented entries that for sections described in this document. You are strongly advised not to delete or change the contents of these entries, especially if they are contained in the configuration file you were initially supplied with. These may relate to features that are not part of the core DP4 system, such as POS (point-of-sale) facilities, that have been added by other developers.
The dp4.ini issued on the DP4 CD ROM no longer contains any entries that refer to obsolete or not yet implemented features and should be used as the basis of any DP4 configuration files you issue.
An example DP4 configuration file file is provided for your inspection.
From 4.620 it is possible for encrypted information to be stored in the DP4 configuration file. An encrypted entry always begins with one of two special sequences:
An entry beginning with ??! is encrypted in such a way that any DP4 program can easily read the decrypted entry. However it will be next to impossible for someone without access to DP4 programming tools to decrypt the entry for themselves - keys are randomly generated, and the algorithm for encryption will not be disclosed.
An entry beginning with ??+ is more strongly encrypted. Entries in this form can only be written or read by programs that have had certain password information added to them with the 4.620 version of KENTCURS program. Only programs that have the same passsword encoded into them can read the entries. The password information is itself strongly encrypted, and also includes signature information from the executable file, to prevent any possibility of a malicious user succeeding in gaining unauthorised access to the information by identifying the appropriate part of the file and copying into another executable.
It is in principle safe to manually replace an encrypted entry with a plain text one should you choose to do so. However, you should be very careful before doing so. On no account should you ever modify an encrypted entry directly. Although in most cases you will simply completely invalidate the entry, there is a slight possibility (one in several tens of billions) that the corrupted entry will cause the decyption code to corrupt memory or crash the system. A program that attempts to read a strongly encrypted entry with a valid, but incorrect encoded password may suffer from the same problem.
Developers should note that a DP4 program that reads or writes encrypted entries in the DP4 configuration file cannot be debugged, or be attached to a debugger. Any attempt to do so will cause the program to terminate immediately. Unlike traditional DP4 encryption, this encryption is intended to deter even determined hackers - the encryption support is provided by a DLL that is itself encrypted and any attempt to disable or bypass the code that prevents debugging will hopelessly corrupt the DLL.