DLLs mit C++BuilderX erzeugen?
-
Hi,
ich habe ein ziemliches Problem und leider find ich keine Lösung dafür.
Ich habe ein Plugin für LCDHype geschrieben. Also eine DLL erzeugt.
Diese läuft einwandfrei, wenn ich den Code mit MS VC++ 6.0 übersetze.
Eigentlich wollte ich aber den C++BuilderX benutzen. Komischerweise funktioniert das nicht. Es wird mir eine DLL erzeugt. Soweit so gut. Nur findet LCDHype das Plugin dann nicht.
Ich vermute den Fehler mal irgendwo bei den Linker-Optionen. Nur leider kenn ich mich damit überhaupt nicht aus.
Hat vielleicht jemand eine Idee dazu?
Ich sag schonmal danke für jede Hilfe.
-
Hat denn keine ne Ahnung was das sein kann?
-
Hi,
ich schätze mal, dass es daran lieg, dass noch relativ wenige den CBX wirklich benutzen...MfG
Alexander Sulfrian
-
Der normale C++Builder benutzt doch eigentlich deselben Compiler und Linker? Das Problem müßte doch dann damit genauso auftreten.
-
OK, ich hab was gefunden.
Sehr peinlich.Ich hatte vergessen die .def mit den EXPORTS in das Borland Projekt einzubinden. Bei VS war sie drin. Somit hatte die DLL keine exportierten Funktionen.
Funktionieren tuts trotzdem nicht. Der Borland-Compiler bringt mir eine Warning, das nicht als public deklarierte Funktionen exportiert werden sollen.
Leider kann ich sie schlecht public deklarieren, weil die betreffende DLL nicht objektorientiert ist. Ohne Klasse geht das doch wohl nicht !?Allerdings weiß ich nicht, warum sich der Compiler über die EXPORTS beschwert. VS macht das ohne Klage.
Ist bei Borland da irgendwas besonderes zu beachten?
Noch zur Info:
Die betreffenden Funtionen sind ganz normal deklariert. Also ohne _declspec(dllexport). Aber auch wenn ich das reinsetze beschwert sich der Compiler.