Nicht Aufgelöstes externes Symbol
-
Hi, Ich benötige dringend hilfe bei meinem Problem!
Ich sitze bereits seit 2 Tagen an dem Code und finde einfach nicht heraus wie ich diese beiden Link-Errors beseitigen kann. Habe im Internet ca. 3 Fälle mit dem genau gleichen Problem gefunden, entweder wurde das Problem nicht gelöst, oder einfach nicht weiter geantwortet...Hier sind meine Errors:
~uafxcw.lib(appcore.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "___wargv".
uafxcw.lib(appcore.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "___argc".~Bin wirklich am verzweifeln, hoffe es kann mir hier jemand helfen!
-
Kann es sein, dass du in deine Dll diverse Afx-Header includiert hast.
Warscheindlich....
Deine Beschreibung ist leider ein bisschen spärlich, darum kann ich nur vermuten.Du hast eine Mfc-Dll angelegt, mit Afx-Unterstützung. Du hast eine Mainfuntion mit argumenten die nicht exportiert wurde, bzw. eine Mainfunktion in einem Afx-Header der nicht exportiert werden kann.
Gib mal ein bisschen mehr Info über dein Problem, das wäre ganz gut....

codeman
-
Genau das ist mein Problem! Ich kann dir höchstens mein Projekt zeigen...
www.planetsite.ch/ccode Das Projekt heisst jpg-resiizer.Die beiden Objekte werden mit der stdlib.h verlinkt, doch habe ich bei "Bibliothek ignorieren:" (in den Einstellungen->Linker) LIBCMT definiert. Ohne das ignorieren von LIBCMT, erhalte ich 8 Link-Errors, welche fast alle darauf hinweisen, dass die symbole doppelt definiert sind. also wenn einer eine idee hat um mein problem zu lösen, wäre ich furchtbar dankbar!!!
-
Ich hab mir einiges mal angeschaut, leider kann ich das Project nicht öffnen da ich eine ältere Version von Visual C++ habe. Als Project-Type steht Visual C++????????

mir gänzlich neu. Kenne nur Dll, Dialogfeld, SDI, MDI, auf MFC basis halt.
Dann halt noch die Win32 geschichten, aber Visual C++.Du wirst doch wissen was du da angelegt hast oder?
codeman
-
Die Bibliothek ist nicht von mir! Ist eine Gratis Jpeg-Lib und ich habe diese nur kompiliert. Gibt es keine Möglichkeit, anzugeben, dass diese beiden Symbole geladen werden und zwar von der stdlib?
aja, sorry hab ich vergessen zu schreiben: Ich nutze VS 2005
-
mut schrieb:
Die Bibliothek ist nicht von mir! Ist eine Gratis Jpeg-Lib und ich habe diese nur kompiliert. Gibt es keine Möglichkeit, anzugeben, dass diese beiden Symbole geladen werden und zwar von der stdlib?
Alles klar, habs geschnallt...., ist also eine Library-Project.
uafxcw.lib(appcore.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "___wargv". uafxcw.lib(appcore.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "___argc".Sagt dir, dass du eine Library names uafxcw.lib zu deiner library hinzulinkst. Diese Library exportiert in irgendeinem internen Header eine Main-Funktion(warscheindlich) und dessen Symbole, wargv und argc, also commandline variablen, sind nicht möglich zu exportieren, weil sie nicht da sind.
Heißt im Klartext: Die Libray wird eingelinkt aber die dazugehörige AFX-Dll fehlt dir. Diese kann entweder nicht auf deinem System sein, oder es ist die falsche Version.
Schau mal nach, wo du die jepg-lib runtergeladen hast, müssen abhängigkeiten stehen, wie bestimmte dll die du haben musst um die library zu linken.
Würde ich mal sagen

codeman
-
Auf der Seite steht nicht viel...
JpgeFile.cpp habe ich included, das JpegLib-Projekt habe ich kompiliert und mein projekt mit dem Libfile JpegLib.lib verlinkt. Auch das verzeichniss mit den source und .h files habe ich wie unten beschrieben eingebunden.
* Add JpegFile.cpp to your project.
* #include "JpegFile.h"
* Link with JpegLib.Lib.
* Using Tools/Options/Directories/Include Files, add a path entry to the location of the JpegLib source files. There are many .H files here that need to be included by way of JpegFile.cpp.
-
Habe das Problem gelöst, falls jemand meine Lösung sehen will:http://codeforum.ch/index.php/topic,2750.0.html
Sorry für das Crossposting, ich musst einfach möglichst schnell eine Lösung finden.