Prototyp und Beschreibung der Funktion setdllinit()

(Nicht freischaltpflichtige Funktion)

 

setdllinit()
Initialisierung und Test der Betriebsbereitschaft der GeoDLL.

Prototyp der DLL-Funktion in C++ Syntax (Kleinschreibung beachten!):
extern "C" __declspec(dllimport) unsigned long __stdcall setdllinit();

Prototyp der DLL-Funktion in Visual Objects Syntax:
_DLL function setdllinit();
as logic pascal:geodll32.setdllinit     // 4 Byte


Die Funktion initialisiert die GeoDLL und prüft dabei die Betriebs-
bereitschaft. Unter Anderem wird getestet, ob die Versionsnummern in der
GeoDLL und in der Konstantendatei geodllbn.bin identisch sind, ob die Werte
aus der Konstantendatei gelesen werden können und ob genügend Speicherplatz
zur Verfügung steht.

Wenn kein Fehler auftritt werden die Konstanten aus der Binärdatei
geodllbn.bin für die folgenden Funktionsaufrufe zur Verfügung gestellt.

Wenn die Prüfung fehlschlägt gibt die Funktion FALSE zurück und eine
Fehlermeldung kann mit der Funktion geterrorcode() ausgelesen werden. Dadurch
erhält das rufende Programm beim Auftreten eines Fehlers die Möglichkeit,
sich nach eigenen Vorgaben zu beenden. In diesem Fall ist sicher zu stellen,
dass keine weiteren Funktionsaufrufe an GeoDLL erfolgen.

Es ist nicht unbedingt notwendig die Funktion setdllinit() zu verwenden. Wenn
sie nicht aufgerufen wird, erfolgt die Prüfung der Betriebsbereitschaft erst
beim erstmaligen Aufruf einer Funktion, die Konstanten aus der Konstanten-
datei geodllbn.bin benötigt. Wenn dabei ein Fehler auftritt, beendet GeoDLL
das zugrunde liegende Programm und sich selbst und gibt eine Fehlermeldung
aus. Da das zugrunde liegende Programm dabei aber nicht mehr reagieren kann,
kann es zu einem unkontrollierbaren Zustand kommen. Deshalb sollte die
Funktion setdllinit() direkt nach dem Start des zugrunde liegenden Programms
aufgerufen werden.

Falls ein bestimmtes Arbeitsverzeichnis für die Konstantendatei geodllbn.bin
erforderlich ist, muss die Funktion setdllworkdir() vor der Funktion
setdllinit() aufgerufen werden!


Die Parameter werden folgendermaßen übergeben bzw. zurückgegeben:
returnWert  Im Erfolgsfall gibt die Funktion TRUE zurück, sonst FALSE.


Freischaltung:
Die Funktion ist nicht freischaltpflichtig.