Statische LIB mit überladenen Funtionen unter VC++
-
Letzte Möglichkeit:
Die Lib ist als C-Code kompiliert. In dem Fall hilftextern "C"{ #include "theLib.h" }
Falls das auch nicht hilft, mal bitte Compileroutput posten.
edit: Und am besten auch etwas Code... kommt mir nämlich alles spanisch vor.^^ Normal sollte das anstandslos klappen ;).
DLL:
Änder das auf .lib
rya.
-
Exportierst Du die Funktionen im C- Style oder im C++- Style (mangled names).
Ich schätze mal, wenn Du die Funktionen via C- Style exportierst, werden keine Überladungen zugelassen (wie auch).Edit:
Habe gerade gelesen, dass Dir die *.lib fehlt. Würde tippen, dass Du gar nix exportierst.simon
-
c kennt doch keine überladungen soweit ich weiß, also kann es mit extern "C" auch nciht gehen.
-
Maxi schrieb:
c kennt doch keine überladungen soweit ich weiß, also kann es mit extern "C" auch nciht gehen.
Hmm, keine Ahnung, programmiere kein ANSI-C.
@simon
Die .lib fehlt Ihm bei ner DLL.. das isn anderes Problem
rya.
-
@simon
Die .lib fehlt Ihm bei ner DLL.. das isn anderes Problem
rya.Warum soll das ein andere Problem sein?
Wenn Du nix exportierst, gibts auch keine *.lib, wohl aber eine *.dll.
simon
-
Ist mir echt zu hoch hier...
Also die Lib ist C++, gibt auch Abhängigkeite etc., kann also kein C sein.
Wenn ich da statt dll die Endung auf lib ändere, dann hab ich die gleiche Datei wie vorher nur mit lib
Warum erzeugt der bei mir die anderen Dateien nicht?
Grüßle
-
Also ich glaube du hast deine Projektdateien irgendwie zerschossen....
Leg mal neue Projekte an und änder nur das nötigste wie include-pfade etc. Oder resette alle Einstellungen ausser die nötigen via "Vom Standard/Übergeordnetes Projekt erben" bei der Auswahl.
Und dann probiers nochmal^^. Das is alles zu seltsam um wahr zu sein :D.
rya.
-
Tipp: Verwende den "Dependency Walker" um zu sehen, was die DLL tatsächlich exportiert und wie sie es exportiert.
-
Hm, na dann mal auf ein Neues...
DLL:
Es steht beim Linker -> Erweitert - > Importbib: (TargetName).lib Somit sollte der das doch raffen oder? Oder muss ich erst ne Lib erzeugen und dann ne dll? Wäre mir zwar neu aber man weiß ja nie...Danke Euch erstmal!
Grüßle
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Compiler- und IDE-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.