Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
System.BadImageFormatException: Could not load file or assembly
Jonas007
myCSharp.de - Member



Dabei seit:
Beiträge: 37
Herkunft: Österreich

Themenstarter:

System.BadImageFormatException: Could not load file or assembly

beantworten | zitieren | melden

Hallo liebe Community,
ich bekomme folgende Exception: Unhandled exception. System.BadImageFormatException: Could not load file or assembly 'System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context. (0x80131058)
File name: 'System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ---> System.BadImageFormatException: Cannot load a reference assembly for execution.


Und zwar habe ich eine DLL, welche ich zuerst in einer Windows Forms-App benutzt habe jetzt in eine Konsolenprogramm eingebunden. Ohne die 'using.Windows.Forns' in einer Klasse meiner DLL funktioniert alles normal, jedoch benötige ich diese und ich weiß nicht, worin genau mein Fehler liegt. Ich habe bei der DLL bereits den bin-Ordner gelöscht und die DLL neu erstellt jedoch ändert das nichts. Aus der Microsoft-Dokumetation zu dieser Exception werde ich leider auch nicht schlau bzw. wüsste ich nicht, weshalb sie in meinem Fall genau ausgelöst wird.

LG Jonas und schonmal Danke im voraus
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.761

beantworten | zitieren | melden

BadImageFormatException heisst in 99,9% der Fälle die Bitness stimmt nicht. Das solltest Du auch der Microsoft Doku entnehmen können, genauso Google bzw. einfach die Forensuche.
Siehe Ursachenhinweise in BadImageFormatException Klasse (System)
Oder auch meine Grundlagenhinweise, wie das in .NET funktioniert, in In Applikation alternativ 32-bit oder 64-bit DLL verwenden

Deiner Beschreibung nach gehst Du aber allgemein mit Abhängigkeiten nicht unbedingt so um, wie man es tun sollte.
Man referenziert DLLs nicht direkt, sondern am besten über NuGet Pakete - außer Du hast unmanaged Assemblies, die nicht paketierbar sind.

Wenn Deine Klasse keine UI Aufgaben hat, dann sollte sie darüber hinaus niemals eine Referenz auf Windows.Forms haben (oder andere UI Technologien).
Siehe [Artikel] Drei-Schichten-Architektur
private Nachricht | Beiträge des Benutzers