DLL aus C++
-
Hallo,
wie erstelle ich am einfachsten eine DLL-Datei
aus einer C++-Datei??Gegeben sind folgende Dateien: *.cpp / *.hpp / *.h
Benötigt: *.dllWie macht man das am einfachsten mit dem Borland
oder auch anderen Compilern?Gruß
Tim
-
Weißt du denn, was eine DLL ist und wofür sie gut ist? Was steht denn in deinen Dateien? Wenn du ein bestehendes Progrämmchen einfach per Compiler-/Linker-Option in eine DLL "verwandeln" willst, kannst du das so erstmal vergessen (sorry, wenn ich mich irre, aber so hört sich das gerade an ). Beispielsweise musst du Funktionen, die du aus der DLL aufrufen willst, exportieren (also speziell deklarieren). Also beschreibe am besten erstmal, was deine Dateien denn beinhalten.
-
Zu deiner ersten Frage: Ich habe mich erkundigt was eine DLL ist und wofür sie gut sein soll. Ich verwende in meinem jetztigen Programm eine alte DLL,
die die serielle Schnittstelle ansteuert. Nun haben sich einige Dinge geändert und der Code müsste geändert werden, dass habe ich soweit getan, nur muss
ich nun wieder eine neue DLL kompilieren. Ich habe mir mal ein Beispiel-Tutorial zum Erstellen von DLLs angeschaut und hat soweit auch alles funkioniert.Nur weiß ich nun nicht genau, wie ich aus einer vorhandenen C++-Datei eine
DLL erstelle...
-
Ok, dann sorry, wie gesagt. In dem Fall kann ich dir leider nicht weiterhelfen. Im VS würde ich einfach ein neues DLL-Projekt erstellen. Wie du es im Builder machen musst bzw. wie du den Linker beschicken musst, weiß ich nicht...
-
_matze schrieb:
Im VS würde ich einfach ein neues DLL-Projekt erstellen [...]
... und den relevanten Code hineinkopieren. Würde ich im Builder genauso machen.
-
-
Ja dieses Tutorial habe ich mir angeschaut.
Ich glaube ich werde versuchen den Code mit VS
zu kompilieren, weil mir der Borland mehrere
Fehlermeldungen bringt.
-
und welche?
-
Im alten Code sind Datentypen wie byte
definiert ... Diese erkennt er nicht,
wieso weiß ich auch nicht.
-
Die werden nicht erkannt, weil das keine Standarddatentypen sind. Hast du windows.h inkludiert?
-
Hm, also ich blicke da nicht ganz durch:
Ich erstelle einen DLL-Wizard, und füge meine
C++-Datei hinzu. Dann versuche ich das zu kompilieren
und er bringt mir viele Fehlermeldungen (in dem Header .h
und nicht .hpp)Jetzt habe ich zusätzlich in den Header die windows.h
inkludiert und nun bringt er andere Fehlermeldungen
die die stdlib.h betreffen ... ??? wieso ??
-
Vermutlich wäre es sinnvoll, diese Fehlermeldungen auch mal hier zu posten...
-
Jawohl werde ich tun,
komme aber erst nächste Woche dazu.