Laden...

Probleme beim Umstellen von x86 auf x64

Erstellt von Kaladial vor 2 Jahren Letzter Beitrag vor 2 Jahren 537 Views
K
Kaladial Themenstarter:in
54 Beiträge seit 2017
vor 2 Jahren
Probleme beim Umstellen von x86 auf x64

Hallo,

ich habe Probleme mit einem bestehenden Projekt.
Die Projektmappe umfasst mehr als 50 Projekte die zu diesem Programm gehören
und ich will die nun von x86 auf x64 umstellen, da eine Komponente des Systems nur noch x64 unterstützt.

Ich habe das also entsprechend umgestellt und die Software lässt sich auch entsprechund compilieren und auch ausführen und es funktioniert alles.

Das Problem was ich hab befindet sich im Visual Studio 2019. Wenn ich dort verschiedene Guis aufmachen will bekomm ich extrem viele Fehler.
Also von meinen 100 user controls lassen sich ca die hälfte nicht öffnen.

Teilweise habe ich user controls geschrieben und die dann über Tools in andere rein gezogen. Da sagt mir der Designer auf einmal:

Fehlermeldung:
Der Typ "GUI.UserControls.ucGroupControl" wurde nicht gefunden. Stellen Sie sicher, dass auf die Assembly, die diesen Typ enthält, verwiesen wird. Wenn dieser Typ Teil Ihres Entwicklungsprojekts ist, stellen Sie sicher, dass das Projekt mithilfe der Einstellungen für die aktuelle Plattform oder eine beliebige CPU erstellt wurde.

Und solche Fehler hab ich ganz viele.

Was ist das und wie beheb ich das?

Mfg Kaladial

T
2.224 Beiträge seit 2008
vor 2 Jahren

Die Fehlermeldung sagt es eigentlich schon.
Du musst die GUI Anwendungen mit Any CPU oder der passende Platform(x64) kompilieren, sonst können diese nicht erkannt werden.
Hier müsstest du ggf. auch eine Einstellungen prüfen.
Wenn du Assemblies explizit als x64 erstellen musst, dann solltest du dies auch bei den Build Einstellungen hinterlegen.
Der Rest kann ja weiterhin mit Any CPU erstellt werden.
Hier kannst du aber auch explizit x64 vorgeben als Build Ziel.
Wenn die Controls nicht aus einem Fertigbaukasten kommen, sollte es auch kein Problem geben.

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

K
Kaladial Themenstarter:in
54 Beiträge seit 2017
vor 2 Jahren

Hi

erstmal als angehängtes Bild meine Build-Optionen. Die sind und waren hier auch die ganze Zeit auf x64.

also: was ich bisher raus gefunden habe:
Sobald ich ein Projekt auf x64 stelle und in diesem Projekt eigene UserControls in ein anderes Control ziehe gibt das System mir den Fehler siehe oben aus.
Das passiert wenn ich im selben Projekt 2 User Controls habe und eins ins andere ziehe das passiert auch wenn ich aus einem anderen Projekt ein User Control verwende.

  1. Ich hab eine Ableitung einer Textbox in einem meiner Controls.
    Das überschreibt einige Dinge ...
    wenn ich das alles raus nehme, und nur die simple Ableitung im quellcode lasse und auf x64 stelle funktioniert das nicht
    wenn ich statt meiner Ableitung meines user controls die default text box im designer eintrage, dann funktioniert das..

wieso funktionieren meine ableitungen nicht ?

K
Kaladial Themenstarter:in
54 Beiträge seit 2017
vor 2 Jahren

ich hab hier einfach mal ein Mimi Projekt erstellt um zu verdeutlichen was ich meine.

Also es ist ein Form und ein User Control mit einer simplen TextBox.

Das User Control hab ich nach dem compilieren per Designer und Drag and Drop in das User Control gezogen.
Alles noch als mein Projekt noch auf Any CPU stand.

Nun habe ich auf x64 gestellt und einmal das Projekt erstellt und habe nun versucht Form1 zu öffnen.

Und bekomme genau diesen Fehler.

4.942 Beiträge seit 2008
vor 2 Jahren

Alle bisherigen Visual Studio Versionen (bis VS 2019) sind nur 32-bit, d.h. die ToolBox-Komponenten (für den Designer) müssen auch in 32-bit kompiliert sein (bzw. als AnyCPU eingestellt sein) - erst VS 2022 wird 64-bit sein.

s.a. x64 Class Library of User Controls?? sowie How can I put a 64-bit user control into Visual Studio 2012's toolbox?

K
Kaladial Themenstarter:in
54 Beiträge seit 2017
vor 2 Jahren

OK thx ...
ja das scheint die Erklärung zu sein...

Na nur gut das VS 2022 in 2 Wochen kommt...