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. |