vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: 32Bit - 64Bit - DLL 
Autor: mathemike
Datum: 18.09.13 19:32

Dass mit dem falschen Format hatte ich ja bemerkt. Aber gut. Ich habe heute die DLL auf dem 64Bit-System neu kompiliert. Wenn ich dann einen Verweis drauf mache, laufen die Programme. Dass ich eine 32Bit-DLL - von einem auf den anderen Tag - nicht auf einem neu erstellten 64Bit-Programm nutzen kann, bleibt trotzdem ein Rätsel. Dass 64Bit-DLLs umgekehrt nicht auf 32Bit-System laufen, war mir ja klar. Aber umgekehrt ? Und wie gesagt, zuerst lief ja alles. Beenden wir die Angelegenheit. Danke !
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

32Bit - 64Bit - DLL 
Autor: mathemike
Datum: 17.09.13 19:34

Hallo ! Ich habe von XP 32Bit auf Win7 64Bit umgestellt, VB2008 aber behalten (natürlich neu installiert). Unter XP hatte ich mit VB2008 eine DLL erzeugt, auf die spätere Programme per Verweis immer zugegriffen haben. Das lief einwandfrei. Nach Umstieg auf Win7 64Bit habe ich neue Programme geschrieben, die wieder per Verweis auf die alte DLL zugegriffen haben (ich habe also die DLL nicht neu kompiliert). Auch das lief absolut störungsfrei. Bis gestern. Ich habe absolut nichts Neues auf meinem PC installiert. Jetzt sehe ich beim Start der neuen Programme von der VB2008-Oberfläche immer den "BadImageFormatException"-Fehler. Geht man ins Detail, wird die bekannte DLL angemeckert. Ich verstehe das nicht. Wenn dieser Fehler von Anfang an nach der Umstellung gekommen wäre, ok. Aber so ? Von einem auf den anderen Tag ? Allerdings gab es mehrere Microsoft-Updates kurz vorher, besonders zum Framework. Kann dieses ein Update so ein Verhalten auslösen ? Ich habe zwar die Lösung meines Problem gegoogelt und habe im Konfigurations-Manager unter VB2008 von "AnyCPU" auf "x86-CPU" umgestellt, um eine 32Bit-Kompatibilität zu erreichen (dann läuft alles wieder), aber muss man das wirklich tun ? Ich werde meine DLL demnächst mal neu kompilieren und wieder umswitchen, aber diese Veränderung im Verhalten von einem auf den anderen Tag soll mir mal einer erklären.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: 32Bit - 64Bit - DLL 
Autor: Manfred X
Datum: 17.09.13 20:56

Hallo!

So viel ich mitgekriegt habe, kommt es wohl zu dieser Ausnahme,
wenn in der IDE unterschiedliche Ziel-CPUs beim Kompilieren
der beteiligten Komponenten (Plattform: AnyCpu) eingestellt waren.

Beitrag wurde zuletzt am 17.09.13 um 20:57:11 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: 32Bit - 64Bit - DLL 
Autor: ModeratorFZelle (Moderator)
Datum: 18.09.13 11:01

BadImageFormatException kommt wenn man NATIVE DLL's im "falschen" Format benutzt.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: 32Bit - 64Bit - DLL 
Autor: ModeratorFZelle (Moderator)
Datum: 18.09.13 20:52

Nein, wir sollten die Angelegenheit nicht beenden.
Du scheinst nicht verstanden zu haben was ich gesagt habe.

Native DLL's sind nicht .NET DLL's.

Du kannst nur dann auf einem 64Bit Rechner Probleme bekommen, wenn du aus einer MixedMode ( also Any CPU ) DLL/EXE auf eine 32Bit native DLL zugreifst.
Wenn du nur in der .NET Welt bleibst, kann es also nicht passieren.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: 32Bit - 64Bit - DLL 
Autor: Manfred X
Datum: 18.09.13 23:04

Ich habe mal gelesen, die Ordner-Such-Reihenfolge
für Komponenten habe sich im Framework irgendwann (?)
im Rahmen eines Update geändert.

Es könnte sein, daß Du deshalb nach dem Update eine falsche
Version der DLL beim Laden erwischt hast.

Nur so eine Vermutung ....


Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel