dll Argumentübergabe



  • Hallo,
    mal was ganz grundsätzliches, kann ich einer dll Argumente z.B. mehrere Strings übergeben. Wenn ja habt Ihr vielleicht ein kleines Beispiel?



  • Eine DLL ist typischerweise eine Sammlung von Funktionen, diese Funktionen kann ich aufrufen als ob ich sie im eigenen Programm geschrieben hätte, was ich dazu brauche sind die Funktionsdeklarationen.

    Jetzt zu deiner Frage: Natürlich und beliegib viele, sofern die aufgerufenen Funktionen diese Parameter vertragen.

    Wenn du selber dll´s schreiben willst, die von mehreren Compileren genutzt werden sollen (BCC MS VC, gcc,..) so darfst du nur Funktionen mit Interfacen wie bei C benutzen, die Hersteller der Compiler konnten sich derzeit nnoch nicht auf eine einheitliches Interface für C++ Funktionen einigen (Leider).



  • Hallo
    @PAD, Danke fuer deine Antwort. Ich hab da ein Verständnisproblem.
    1.
    Ich möchte einen String über eine Funktion, die in einer dll implementiert wurde aufnehmen. Dann soll dieser String an ein Hauptprogramm weitergegeben werden.
    Als Hauptprogramm verstehe ich eigentlich eine main Funktion, die diesen String weiterverarbeitet.
    Aber ich weiss nicht wie und ob das funktionniert.
    2.
    Vielleicht kann auch dieser String in einer dll weiterverarbeitet werden, indem ich mein Hauptprogramm, dass über die main gestartet wurde, irgendwie in der dll eingebaut ist.
    Hilfe!!!!!
    Vielleicht kann mir jemand ein kleines Bsp. zusenden??



  • Schreib als erstes mal die Funktion, die die Arbeit erledigt in ein extra File und binde das in dein Projket ein. Wenn diese dann funktioniert, nimmst du das headerfile in dem die Funktion deklariert ist und das C-Sourcefile und machst damit eine neues Projekt, in diesem neuen Projekt stellst du die Compilersettings nicht auf exe sondern auf dll. Damit müsste das meiste getan sein.
    Auf jeden Fall sollte man die entsprechenden Kapitel in der MSDN (=Visual C++ HIlfe) gelesen haben.

    Viel Spaß



  • @PAD

    in diesem neuen Projekt stellst du die Compilersettings nicht auf exe sondern auf dll

    was meinst Du damit, wo kann ich diese Einstellungen machen?
    Meinst Du vielleicht das man eine neues WIN32-Dynamic-Link-Library Projekt erstellen soll?
    Falls nicht, stehe ich verdammt nochmal aufm Schlauch!!!



  • du hasts erraten


Anmelden zum Antworten