DllCall
obj -> DllCall([[, var]]) : int
Funktion einer DLL oder einem SO aufrufen
Details
- obj: Deskriptor der DLL
- var: Argumente (optional)
- Resultat:
intRückgabewert der DLL-Funktion - Siehe: Verwandte Befehle , DLL-Funktionen , Argument-Funktionen , Beispiel
Mit diesem Befehl kann die Einstiegsfunktion einer Dynamic Link Library (Windows - DLL) oder einem Shared Object (Linux - SO) aufgerufen werden. Die Bibliothek muss zuvor mit dem Befehl DllLoad () geladen worden sein. Der von diesem Befehl zurückgegebene Deskriptor wird in (obj) übergeben. Der Einstiegsfunktion der Bibliothek können bis zu 23 weitere Argumente übergeben werden. In der Bibliothek können die Anzahl der Argumente ( C16_ArgCount() ) und Informationen über die Argumente ( C16_ArgInfo() ), wie zum Beispiel der Typ des Parameters, ermittelt werden.
Die Argumente können mit den Funktionen C16_ArgRead() gelesen und mit der Funktion C16_ArgWrite() geschrieben werden. Um Argumente an die aufrufende Prozedur zurückzugeben, müssen diese Parameter mit var übergeben worden sein.
Bei umfangreichereren Bibliotheken sollte im ersten optionalen Argument ein Code zur Unterscheidung von verschiedenen Funktionen innerhalb der Bibliothek übergeben werden. Die Einstiegsfunktion überprüft dann das erste Argument und entscheidet in einem CASE-Konstrukt, welche Funktion innerhalb der Bibliothek aufgerufen werden soll.