Ein MFC Programm von MVSC++6.0 auf MVC++ 2005 umsetzen
-
Überprüf mal
- Verzeichnisse der eingebundenen Header
- Verzeichnisse der eingebundenen Libraries (wurden alle neu übersetzt?)
- Zeichensatz der eingebundenen Projekte (MBCS, Unicode)
-
Da fehlt eine Source datei, die nicht kompiliert wurde.
Diese Klassen und Funktionen gehören zu Deiner Applikation.
-
Danke das ihr weiter dran bleibt!
Wie kann ich den Zeichensatz überprüfen?
Ich habe jetzt noch mal die Verzeichnisse Debug und Release gelöscht und neu kompiliert. Die Linkerfehler bleiben aber trotzdem.
Mein Projekt läuft ja Fehlerfrei unter MVS 6.0 und es müssen ja durch die Umstellung auf 2005 die Fehler hevorgerufen werden. Ich denke, dass es eher etwas mit den Libaries zu tun hat ... wie sind diese Ersichtlich bzw. wie können die neu übersetzt werden. Ich habe zum Beispiel die Commontracer.h in meinem Projekt als Pfad included und die Linkerfehler beziehen sich darauf. Ist es möglich das für die Version 2005 andere Header-Versionen brauch oder andere Libaries zu verwendet werden müssen?
-
Ich habe zum Beispiel die Commontracer.h in meinem Projekt als Pfad included und die Linkerfehler beziehen sich darauf.
Gehört da eine lib/dll zu d.h. stehen die fehlenden Quellen in der lib? Wie wurden Bibliotheken dem Projekt hinzugefügt (Datei direkt hinzugefügt, zusätzliche Bibliotheksverzeichnise,...)? Stimmen die Verzeichnisangaben nach der Konvertierung noch? Sieh mal deine Projekteigenschaften (Allgemein, Compiler, Linker) durch. Da findest Du auch die Angaben zum Zeichensatz.
Neue Header brauchst Du sicher nicht, denn dann hättest du bereits Compiler- und keine Linkerfehler. Aber vielleicht müssen noch einige defines angepasst werden?
-
wie sind diese Ersichtlich bzw. wie können die neu übersetzt werden
Du musst die Quellen dazu entweder in derselben Projektmappe oder in extra Projekten haben. Die müssen dann u.U. genauso umgestellt und dann neu eingebunden werden. Wenn diese von Frendfirmen kommen, brauchst Du evt. neue Versionen davon.
-
Und noch was: Alle Deine Libraries, die kene reinen Import-Libraries sind (Statische Libs), müssen allemit dem neuen Compilermit übersetzt werden!
-
Du versuchst vermutlich, eine Lib mitzulinken, die wchar_t als typedef behandelt, seit VC7 ist es aber ein built-in typ. Du kannst den Compiler auf die alte Methode umschalten ( /Zc:wchar_t heißt die Option ), das muss aber nicht zwingend funktionieren. Evtl. musst du Adapter schreiben, die die Funktionen auf unsigned short umleiten. Am besten wäre es natürlich, die Lib mit VC8 neu zu bauen.
-
Zitat:
Wenn diese von Frendfirmen kommen, brauchst Du evt. neue Versionen davon.Dies werde ich noch prüfen müssen ob hier die Fehlerquelle liegt aber ansonsten habe ich eure Vorschläge soweit gescheckt und kein Fehler bei Verzeichnisangaben oder sonstigen finden können.
Unter Projekteigenschaften bei nachträglich hinzugefügte Bibliotheksverzeichnisse habe ich meine ganzen Header und Bibliotheken hineingeschrieben und in der StdAfx des Projektes habe ich einzelne Header mit eingebunden und genauso funktioniert es unter MVS 6.0 .Deshalb habe ich hier nochmalig ein paar Fragen:
Zitat:
Alle Deine Libraries, die kene reinen Import-Libraries sind (Statische Libs), müssen allemit dem neuen Compilermit übersetzt werden!Um diese mit zu übersetzten, müssen diese Libaries doch nur unter Projekteigenschaften richtig eingebunden sein oder? Denn das sind sie.
Zitat:
Du versuchst vermutlich, eine Lib mitzulinken, die wchar_t als typedef behandelt, seit VC7 ist es aber ein built-in typ. Du kannst den Compiler auf die alte Methode umschalten ( /Zc:wchar_t heißt die Option )Ich habe einen Header gefunden der von mir included wird und dieser behandelt wchar_t. Wie ist diese Syntax nun zu ändern, muss ich statt wchar_t, /Zc:wchar_t schreiben??? ... oder wie kann ich den Compiler auf die alte Methode umschalten?
-
Menschenskinders, der erst Treffer zu "/Zc:wchar_t" bei g**gle sagt dir, wie du es einstellst.
-
Sorry, war mit meinen Gedanken schon wieder wo anders ... hätte es gleich Googeln sollen! Ich danke dir sehr für die wertvolle Information, denn nach der Umstellung in den Projekteigenschaften läuft mein Programm!!! Es hat also daran gelegen! Ich habe nun nur noch einige Warnungen die ich anzuschauen habe.
-
Edit: hat sich wohl erledigt.