The 32 bits version of the program satisfies to the demands of Microsoft in relation to the installation. This is attained with the use of a installation (setup) program. This installation program adjusts for instance the Windows registry. This has two important consequences:
1. By clicking under Windows on "Setups/Configurationscreen/Software" the program package can be automatically uninstalled, including the maps, program groups and the cleaning up of the Windows registry. Un-installation is supported from the desktop as well.
2. In the Windows registry icons are registered belonging to respectively the input files (*.RWI) and the output files (*.RWU) for the 2-dimensional part of the framework program. For the 3-dimensional part of the framework program these extensions are (*.R3I) and (*R3U) respectively.
By this it is possible to double click at these files with those icons in front of it and then the framework program will be started automatically, independent of the place of the files at the hard disk (it is even allowed that the files are placed via the LAN on another computer).
By double clicking at a *.RWI or *.R3I file the framework program will load the data file and is ready then to inspect and change the input data of an old problem, after which the calculation can be started again.
The program is written with the aid of DELPHI; a WINDOWS programming environment from http://www.embarcadero.com/products/delphi
Another example is Visual Basic from Microsoft. Although the most important target group of DELPHI are the programmers of front-ends of relational databases DELPHI can very well be used for the development of other applications (this program is a proof).
At the basis of DELPHI lies the old trustworthy PASCAL-compiler from BORLAND (a perhaps better name for DELPHI should be: "Visual Pascal").
The coding of the for Windows characterizing screen elements happens in DELPHI at a graphical interactive way. At the base of DELPHI lies the "FORM", on which other screen elements such as "buttons, combo boxes, radio buttons, check buttons etc." can be simply dropped.
Every FORM and screen element incorporates so called "PROPERTIES" and "EVENTS". The PROPERTIES determines the specific setups, the EVENTS describes the various possible actions which a FORM are another screen element can undergo.
DELHPI generates automatically from the graphical displayed FORMS and other screen elements a skeleton of the PASCAL source. It is even possible to click at the regarding screen element in order to jump automatically to the accessory Pascal source.
An advantage of DELPHI is also that programming can take place at different levels. The object oriented approach DELPHI is based on does not have to extend to the whole program; for instance the calculation part of the program. It is allowed to program some parts at the old fashioned structured procedural way; I call this mix mode programming. The Windows user interface is of course programmed with the aid of object orientation (the strength of DELPHI)
When the possibilities of the in DELPHI incorporated visual object oriented toolbox (Visual Component Library) in particular cases are not sufficient enough then can be programmed directly at the level of Windows itself (WIN-API).
Another kind of mixed programming The functionality of DELPHI can even be expanded by building components by the user (are can be bought of be downloaded from the Internet); also components from Visual Basic can be incorporated (OCX and ActiveX).
The program uses the principle of the Multi Document Interface (MDI) through which in principle an infinite number of windows can be opened at the same time. This makes it possible to open an alfa-numerical input window next to a graphical window; this way changes in the numerical input window can be reflected direct at the graphical window and vice versa.
Between load cases in the program can simply be switched by clicking at the tab sheets at the bottom of the graphical windows.
The program is further supplied with inter active help at different levels:
- yellow text "balloons" at the speed buttons,
- context sensitive messages at the panel at the bottom of the screen,
- comprehensive help pages with hypertext (switching between topics and pages, search functions etc.).
For the first two mentioned help levels above within DELPHI nothing has to be programmed (only typing the text in the concerning PROPERTY).
Programming under Windows
DELPHI makes use of object oriented programming principles, a relative new way of programming. The advantage of using objects is that the wheel not always has to be reinvented. By the mechanism of inheritance the object made by the programmer, which is derived from an existing specific DELPHI object, possesses automatically all the elements of the mother DELPHI object.
The handling of the mouse in a program is for instance completely hidden in the object oriented DELPHI toolbox; the consequence is that the programmer does not have to border with the steering of the mouse (its seems to go automatic).
Programming under Windows is rather different than programming under MS-DOS. With MS-DOS as operating system the programmer "talks" rather direct to the computer. Under Windows the communication between the program and the computer is not directly; direct communication is not allowed even. The program "talks" with Windows and only Windows "talks" to the computer hardware (multy layers) For an experienced MS-DOS this takes a change in attitude. Also the complexity and extensiveness of the API under Windows constitutes a high threshold. This threshold becomes much lower when DELPHI is used.
Further tools are available in DELPHI for direct graphic interactive designing of various screen elements.
Advantages of Windows as an operating system
Besides the uniform graphical user interface of Windows the advantage of Windows in relation to MS-DOS is that each device (screen, printer etc.) not apart have to be programmed for each type in another way (there are a lot of printers in the outside world); Windows takes care of all of it.
The quality of the various device drivers from different manufacturers is not always at the same (high) level; therefore (negative) surprises cannot be excluded unfortunately.
Not always the details shown at the monitor screen (colours, shapes etc.) are the same when printed on paper.
A very important feature of Windows is the breakthrough of the notorious 640 kB memory limit, which did exist under MS-DOS.
Windows supports also virtual memory (the RAM memory can partly dynamically be moved to a scratch-file at the hard disk).
Because Windows 3.1 possesses had a 16 bits memory addressing system the programmer has still to wrestle with the also form MS-DOS known segmentation of the memory in 64 kB blocks. Only with the use of rather complicated pointer arrhythmic these block segmentation can be circumvented (needed to declare matrixes larger than 64 kB).
For the 32 bits version these memory limitations are no longer in force.
Available is a theoretical linear memory with a size of 2 GigaByte (2000 Mbyte).
The memory under Windows is not addressed anymore directly but via a Selector Table. Thanks to this memory addressing scheme Windows is able to use an advanced type of memory management. Characteristic features are for instance automatic garbage collection and automatic program and data overlays. Also Windows cares for the emulation of an absent numerical coprocessor (from and above the Pentium all processors have a build in co-processor however).
Windows therefore takes care of many functions which under MS-DOS explicitly should have been programmed.