Dev C++ - DLLs



  • Hallo,

    ich erstelle gerade eine DLL mit Dev C++. Das Erstellen an für sich klappt, wenn ich die DLL dann jedoch in einem anderen Programm einbinde, erhalte ich nichtdefinierte Symbole vom Linker. Die bei der DLL-Generierung zusätzlich ausgespunkte statische Bibliothek habe ich jedoch gelinkt.

    Zusätzlich erscheint bei der DLL Erstellung folgende Meldung:

    dllwrap.exe: no export definition file provided.
    Creating one, but that may not be what you want

    Hat das etwas mit meinem Problem zu tun? Wäre nett, wenn ihr mir helfen könntet, auf jeden Fall schonmal Danke im Voraus.

    Gruß, oemme



  • Die statische Library braucht man nicht! Man muss die DLL dem Linker mitgeben.
    Wenn du eine Funktion in eine DLL packen willst, musst du sagen, ob sie öffentlich ist.

    int __declspec (dllexport) foobar(void);
    

    Diese Deklaration ist öffentlich und kann von anderen Programmen benutzt werden.

    Im Programm, das die DLL benutzt, muss die Deklaration so aussehen:

    int __declspec (dllimport) foobar(void);
    

    __
    Grüße, DennisB


Anmelden zum Antworten