Visual 2005 Erorr LNK2005 && LNK1169
-
Guten Morgen Ihr lieben,
Seit gestern wurmt mich ein gemeiner Fehler.
Ich schreibe derzeit an einer Konsolenanwendung , die ich nachdem sie läuft, als Form umschreiben will.
Ich bin mittlerweile auch weitgekommen nur das ich jetzt Zwei "LNK-Fehler" bekomme.Ich bin mittlerweile auch soweit das ich weiß das die durch die <afx.h> entsteht und das das die zur MFC gehört.
Jetzt hab ich versucht wie in einigen Foren zu geraten wurde das Projekt auf MFC umzustellen, allerdings mag mir das gar nicht gelingenKann mir vll. jemand da eine Kurze Hilfestellung zu geben?
Denn solangsamm gerate ich unter Zeitdruck.Liebe grüße
das Mäuschen
-
*headdesk*
Sollte vielleicht auf den Fehler anhängen -.-error LNK2005: "void * __cdecl operator new[](unsigned int)" (??_U@YAPAXI@Z) ist bereits in libcpmtd.lib(newaop.obj) definiert. uafxcwd.lib
fatal error LNK1169: Mindestens ein mehrfach definiertes Symbol gefunden.
-
Bitte sorge dafür, dass die afx.h Header atei vor allen anderen Headern included wird!
-
ich wollte grad auch eine Frage aufmachen, die in diese Richtung geht. Da ich nun zufällig den hier gesehen habe, schreib ich meine Frage hierrein (hoffe Mäuschen ist nicht sauer).
Es geht bei mir ebenfalls um das richtige einbinden von MFC.
Ich stoße auf das Problem des öfteren und wurstel es immer so hin, dass es wieder geht. Ich würde aber gerne wissen, was ich mache und wie es richtig wäre.Ich erstelle mir libs, die ich irgend wo einbinde und alles funktioniert und ich mache mir keine Gedanken weil ich mir denke, alles ist wohl nun richtig.
Dann binde ich es wo anders ein und es kommen wieder Massen an LinkerFehler (LNK2005, Funktionen wurden schon in msvcprtd.lib und in MSVCRTD.lib definiert).Bei mir steht #include "stdafx.h" auch immer am Anfang!
Dann stelle ich manchmal auf MFC in einer statischen lib um und es funktioniert. Manchmal auch nur, wenn ich dynamische lib nehme.
Aber einfach immer rum probieren und nicht wissen was man genau macht und nicht wissen, wie man es am sinnvollsten umsetzt, ist eher suboptimal. Mit Halbwissen kann man was für den Moment hinkriegen aber es werden immer wieder Probleme auftauchen.
Mein aktuellstes Problem ist, dass ich Klassen einer Entwicklungsumgebung verwenden will. Da habe ich ein Sample-Code welches das schon macht.
Also habe ich mir ein neues Programm angelegt, alle Einstellungen des Projektes so übernommen, wie es im Sample ist (in den Optionen die bei VisualStudios 2008 kommen, wenn ich auf den Projektnamen rechts klicke und dann auf Eigenschaften).
Habe die stdafx.h so angepasst, dass auch die gleich ist. Das Programm macht bis jetzt noch nichts.
Wenn ich es dann kompilieren will kommen die Linkerfehler! Obwohl alles genauso ist wie im Sample (zumindest auf den ersten Blick). Nun weiß ich nicht, wieso die bei mir kommen und beim Sample nicht.
Wenn ich hingegen bei meinem Programm die mfc auf dynamisch stelle (ist hier grad statisch), kompiliert er aber bekomme direkt beim Starten
"Eine Anwendung hat versucht, die C-Laufzeitbibliothek nicht ordnungsgemäß zu laden. Wenden Sie sich für weitere Informationen an das für die Anwendung zuständige Supportteam"Weiß grad nicht weiter
-
Martin Richter schrieb:
Bitte sorge dafür, dass die afx.h Header atei vor allen anderen Headern included wird!
Danke, schon hats funktioniert