Buchempfehlung
Windows System Programming
Windows System Programming
Das Kompendium liefert viele interessante Informationen zur Windows-Programmierung auf Englisch. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Referenz - EXPORT

Referenz-Navigation

 

Syntax: {SUB | FUNCTION} foo ( Argumente ) [AS Datentyp] EXPORT
Typ: Klausel
Kategorie: Bibliotheken

Wenn eine BefehlsreferenzeintragSUB oder BefehlsreferenzeintragFUNCTION in einer dll/so mit der EXPORT-Klausel deklariert wurde, wird sie zur PUBLIC-EXPORT-Tabelle hinzugefügt, sodass sie von externen Programmen aus mit BefehlsreferenzeintragDYLIBSYMBOL verlinkt werden kann.

Beispiel: mydll.bas

' compiliert mit: fbc -dll mydll.bas (erstellt mydll.dll und libmydll.dll.a unter Win32,
'                                 oder libmydll.so unter Linux)
DECLARE FUNCTION AddNumbers ALIAS "AddNumbers" ( _
   BYVAL operand1 AS INTEGER, BYVAL operand2 AS INTEGER ) _
   AS INTEGER

FUNCTION AddNumbers  ( _
    BYVAL operand1 AS INTEGER, BYVAL operand2 AS INTEGER ) _
    AS INTEGER EXPORT
  AddNumbers = operand1 + operand2
END FUNCTION

Beispiel: Testmydll.bas

'Hauptprogramm
' erstelle einen Funktionspointer
' Argumente sind dieselben wie in der DLL
DIM AddNumbers AS FUNCTION ( _
   BYVAL operand1 AS INTEGER, BYVAL operand2 AS INTEGER ) _
   AS INTEGER
DIM hndl AS ANY PTR
hndl = DYLIBLOAD("mydll.dll")
' Adresse des Programms finden
' (Groß-/Kleinschreibung beachten!)
AddNumbers = dylibsymbol( hndl, "AddNumbers" )
' Aufrufen
PRINT "1 + 2 ="; AddNumbers( 1, 2 )
DYLIBFREE  hndl
SLEEP

Wichtig: Wenn Sie die ALIAS-Klausel nicht benutzen, verwendet FreeBASIC den von Ihnen angegebenen Programmnamen in Großbuchstaben.

Unterschiede zu QB: neu in FreeBASIC

Plattformbedingte Unterschiede: wird unter DOS nicht unterstützt

Unterschiede zu früheren Versionen von FreeBASIC: existiert seit FreeBASIC v0.11

Unterschiede unter den FB-Dialektformen:
In der Dialektform Befehlsreferenzeintrag-lang qb steht EXPORT nicht zur Verfügung und kann nur über __EXPORT aufgerufen werden.

Siehe auch:
BefehlsreferenzeintragDECLARE, BefehlsreferenzeintragDYLIBLOAD, BefehlsreferenzeintragDYLIBSYMBOL,BefehlsreferenzeintragDYLIBFREE,
BefehlsreferenzeintragModule (Library / DLL)


Zusätzliche Informationen und Funktionen
  • Der Referenzeintrag wurde am 24.07.2007 von RedakteurVolta angelegt.
  • Die aktuellste Version wurde am 19.01.2013 von Redakteurnemored gespeichert.
  Versionen Versionen