Hilfe
Parameter
dll$ | Name der DLL-Datei |
funktion$ | Name der DLL-Funktion |
eingabe | Identität einer Bank mit Eingabewerten |
ausgabe | Identität einer Bank mit Ausgabewerten |
Rückgabewert
Ausgabewert wird zurückgeliefert (Integer). Zusätzlich werden Werte in der Ausgabebank gespeichert.
Beschreibung
Die Funktion CallDLL führt eine bestimmte Prozedur in einer bestimmter DLL Datei aus. Die DLL Prozeduren sind wie BB Funktionen und können nicht nur Daten verarbeiten, sondern auch Aktionen ausführen (z.B. Windows Neustart).
Gebe einfach den Dateinamen einer DLL Datei an. Der Prozedur Name muss in der DLL Datei enthalten sein (Groß-/Kleinschreibung beachten!).
Die optionalen Parameter "Eingabe" und "Ausgabe" sind die Identitäten von 2 Speicherfeldern (banks). Diese können Daten für die Ein-/Ausgabe enthalten.
Beispiel
Dies ist ein Prinzipbeispiel:
outbank = CreateBank (...)
;Mit POKE-Befehlen Eingabedaten setzten
result = CallDLL ("dllname","dllfunc",inbank,outbank)
;Mit PEEK-Befehlen Ausgabedaten lesen
So könnte ein Visual-C++ Code für eine DLL aussehen:
extern "C"{
_declspec(dllexport) int _cdecl my_dll_func( const void *in,int in_size,void *out,int out_size );
}
"in"-Pointer zeigt auf die Eingabe-Speicherbank. "in_size"-Variable gibt die Länge der Daten an. "out"-Pointer zeigt auf die Ausgabe-Speicherbank. "out_size" gibt die Ausgabe-Länge an.
"cdecl"-Kennung deutet auf eine C-Declaration. "stdcall" kann seit v1.77 auch benutzt werden!
Siehe auch

