dll mit Klassen unter VC++ 6.0



  • Bin bei der Suche für mein folgendes Problem auf dieses Forum gestoßen. Hoffe mir kann jemand helfen.

    Ich habe eine Menge an Klssen mit zugehörigen Headern programmiert und will diese, bzw. das benötigte, nun in einer API mit DLL bereitstellen. declspec scheint nach allem was ich gelesen habe aber nur für Variablen, Konstanten und Funktionen zu funktionieren, aber nicht für Klassen und deren Methoden.
    Was muß ich tun, damit z.B. meine Singleton-Klasse Mainwindow in der API die Methode int Mainwindow::Init(.....); zur Verfügung stellt?

    Bin für jede noch so kleine Hilfe dankbar, da dies meine erste API ist.

    Danke, Ralph



  • Falls es jemand interessiert:

    ihr müßt falls die Klassen funktionieren, alle Klassen samt Header in ein leere(!) dll-Project schieben, ohne eure main und diese in ein neues Win32 oder console-project schieben. Die lib, die mit der dll im den System-Ordner kopiert oder installiert wird, muß in dem neuen Projekt eingebunden werden, mit Pfad-Angabe. __declspec(dllexport) nicht bei den zu exportierenden Methods vergessen. Nie die ganze Klasse exportieren -> reißt die Kapselung auf!

    That's it,
    cy Ralph



  • Ralphs Probleme schrieb:

    Nie die ganze Klasse exportieren -> reißt die Kapselung auf!

    warum? zugriffsrechte werden doch mit exportiert



  • HAST RECHT WAR FALSCH; ABER WAS ICH MEINTE WAR, DAß BEIM SINGLETON-MUSTER, DA DIE DLL, MEHRFACH IM SPEICHER GEHALTEN WERDEN KANN AUCH MEKRERE INSTANZEN DER SINGLETONKLASSE EXISTIEREN KÖNNEN.

    CY RALPH


Anmelden zum Antworten