Frage: MFC dll in nicht MFC Projekt einbinden



  • Hallo!

    Versuche seit Tagen und habe anscheinend ein Verständnisproblem. Ich wollte die MFC-DLL(Regulär) in einem anderen Projekt(nicht MFC) derseblen Solution benutzen, damit in dem nicht-MFC Projekt das Dialogfenster erzeugt werden kann.
    In MFC habe ich dazu ein Dialogfenster angelegt, in Header-Datei

    class __declspec(dllexport) mFenster : public CDialog
    

    geschrieben, diese Header Datei(dllimport) in anderes Projekt kopiert und included, .lib-Datei eingebunden. Da das andere Projekt nicht MFC ist, will der Compiler(Visual Studio 2005) dort CDialog Klasse nicht kennen. Ich bin nach dieser Anleitung vorgegangen:
    http://www.codeguru.com/cpp/cpp/cpp_mfc/tutorials/article.php/c4017

    Was mache ich falsch?

    Danke!!!



  • Meines Wissens nach kann man aus einer regulären DLL keine Klassen exportieren, sondern nur Funktionen. Kannst du den Aufruf so umbauen, dass deine Anwendung die Dialog-Klasse gar nicht kennen muss, sondern nur eine Funktion aufruft?



  • Vielen Dank für deine Antwort. Ja, die MFC-Klassen können offenbar nicht exportiert werden. Ich habe es mit explicit linking gelöst, da muss man die Header-Datei nicht includen.


Anmelden zum Antworten