Fragensteller
Konvertierung von VS 2005 auf VS 2010 Express Edition - Designer Probleme

Allgemeine Diskussion
-
Designer von VS 2005 hat gar kein Problem damit (2008 auch nicht). Wenn man das Projekt mit VS 2010 Express Edition öffnet, kann man alles einwandfrei kompilieren. D.h. Applikation läuft.
Problem: Designer meldet folgenden Fehler: C++ CodeDOM parser error: Line: 754, Column: 23 --- Unknown type 'InterfaceXYZ'. Please make sure that the assembly that contains this type is referenced. If this type is a part of your development project, make sure that the project has been successfully built.
WinForm erbt von Interface Class "InterfaceXYZ".
Wenn man diese Vererbung auskommentiert und alles neu erzeugt, meldet Designer keine Probleme. Und sogar wenn man beim nächsten Schritt diese Vererbung aktiviert, meldet Designer immer noch keine Probleme (Ist es Workaround?).
Aber es gibt immer noch 2 Probleme:
- Wenn man das Projekt in ein anderes Verzeichnis kopiert hat, muss man Worakaround wiederholen (s.o.)
- Jedesmal wenn Projekt geöffnet wird, behauptet VS dass sich an Design etwas geändert hat und man muss neu erstellen um es ausführen zu können (Projekt veraltet. Man erkennt auch dran dass ein Sternchen erscheint)
- Typ geändert Robert Breitenhofer Freitag, 18. November 2011 14:42 Keine Rückmeldung des Fragenstellender
Alle Antworten
-
Hallo Kadir57,
laut der Fehlermeldung des Compilers ist das 'InterfaceXYZ' nicht eingebunden. Hast du die Assembly und den Namespace des Interfaces eingebunden?
Wenn das Projekt geöffnet wird, scheint Visual Studio Änderungen in dem Designer vorzunehmen. Daher ist es jedesmal obsolete.
Allgemein möchte ich dich fragen, warum du dich mit C++/CLI rumqüalst. Insbesondere, da VS2010 z.B. kein Intellisense für C++/CLI mehr bietet. Ich möchte dich in diesem Zusammenhang auf einen Artikel von Jochen Kalmbach (MVP VC++) aufmerksam machen: http://www.c-plusplus.de/forum/263084-full.
Viele Grüße
Holger M. Rößler
Kaum macht man es richtig, schon funktioniert es -
****************************************************************************************************************
Dieser Thread wurde mangels weiterer Beteiligung des Fragestellenden ohne bestätigte Lösung abgeschlossen.
Neue Rückfragen oder Ergänzungen zu diesem Thread bleiben weiterhin möglich.
**************************************************************************************************************** -
Hallo Holger,
vielen Dank für die Antwort.
Ja, es ist alles eingebunden (sonst hätte Compiler Probleme gemeldet. VS2010 kann das Projekt ohne Probleme kompilieren. Nur der Designer macht Probleme). Nach meinem Workaround meckert Designer zwar nicht mehr aber jedesmal wenn das Projekt geöffnet wird, wird Design-Header-Datei geändert (behauptet zumindest VS so).
Die Frage ist: wenn VS2005 und VS2008 damit keine Probleme hat, wieso meckert VS2010. Die andere Frage: mit meinem Workaround klappt es. Wieso?
Kurz zum Projekt:
die Interface Klasse ist in einem anderen Header-File deklariert "public interface class InterfaceXYZ{...};" und diese Header-Datei in Designer-Header-Datei includiert (auch in Projekt hinzugefügt). Und in Designer-Header-Datei (Form1.h) wird wie folgt verwendet:
public ref class Form1 : public System::Windows::Forms::Form, InterfaceXYZ
Nach meiner Meinung scheint alles in Ordnung zu sein. Compiler meckert auch nicht. Nur der Designer meckert.
Das Problem ist folgendes: irgendjemand hat das Projekt entwickelt. Jemand anders soll es nun geschwind auf VS2010 umstellen (natürlich ohne viel Aufwand reinzustecken. Wie es bei allen Projekten bekannt ist.).
ps: ich hatte gehofft dass ich vom Forum-Server eine Mitteilung bekomme, wenn jemand antwortet aber es war leider nicht der Fall (in Einstellungen kann man es zwar einstellen aber man bekommt keine email)