2009-04-06 7 views
0

.NET 3.5 Visual Studio 2008 Team Editioneine XML eingebettete Ressource-Datei Zugriff wirft in Release-Modus Fehler aber nicht Debug-Modus

ich eine XML-Datei, die ich über die Registerkarte Ressourcen die zu einer Baugruppe hinzugefügt haben Projekteigenschaften; und den Access Modifier als öffentlich markiert haben. Während im Debug-Modus ausgeführt wird, gibt es keine Probleme, die Montage und die eingebettete Ressource in einem anderen Projekt verweisen, dh

XElement errorMap = XElement.Parse(Properties.Resources.ErrorMapper); 

Wenn jedoch die Projekte im Release-Modus betrieben werden, erhalte ich diese Fehlermeldung:

Could not load file or assembly 'XXX.XXX, Version=1.1.0.25104, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format.

Warum funktionieren die Projekte im Debug-Modus, aber nicht im Release-Modus? Hmmm

Antwort

0

....

Ich betreibe eine 64-Bit-Dev-Maschine und hatte den Build gezielt und Release-Modi auf der x86-Plattform. Offensichtlich, als ich die Ressourcendatei hinzufügte, änderte sich die Plattform, die für den Freigabemodus gebaut wurde, auf Beliebige CPU.

Da ich einige 3rd-Party-DLLs referenziere, die 32 Bit benötigen, wurde der Any-CPU-Build im Release-Modus ausgekotzt.

Problem gelöst.

0

Verweisen Sie auf eine DLL-Datei auf Ihrer Test-Box, die sich nicht an der gleichen Stelle in Ihrer Produktion befindet? Ich denke, das hängt davon ab, ob Sie Ihre Referenzen lokal zu kopieren, setzen ...

Was ist mit Ihrem .net-Frameworks und Service Pack, ich würde sicherstellen, dass diejenigen, die gleich/up to date ...

+0

Nicht im Falle. Sehen Sie meine Entschließung: http://stackoverflow.com/questions/723055/accessing-an-xml-embaded-resource-file-throws-error-in-release-mode-but-not-debug/723253#723253 Wie auch immer, in diesem Fall ging es darum, lokal im Debug/Release zu laufen; keine Test-/Produktumgebungen. –

Verwandte Themen