Hallo zusammen,
ich habe ein kleines Problem mit Assemblyverweisen.
Meine Anwendungsstruktur ist wie hier abgebildet:
http://www.bilderload.com/bild/10318/versionTF0UG.png
Das Problem ist die tools.dll, die ich in zwei verschiedenen Versionen (in unterschiedlichen Verzeichnissen) vorliegen habe. Dies kann leider auch nicht geändert werden und muß so bleiben.
Wenn ich aus der testapp.exe auf die worker.dll zugreife, benutzt diese interessanterweise die Version 1.0.0.0 der tools.dll.
Ich bräuchte es aber so, daß die testapp.exe wie gezeichnet die V1.0.0.0 benutzt und die worker.dll die Version 2.0.0.0.
Im MSDN habe ich dazu folgendes gefunden:
********
Zur Laufzeit müssen sich Komponenten entweder im Ausgabepfad des Projekts oder im Globaler Assemblycache (GAC) befinden.
Wenn das Projekt einen Verweis auf ein Objekt enthält, der sich nicht an einem dieser Orte befindet, müssen Sie den
Verweis beim Erstellen des Projekts in den Ausgabepfad des Projekts kopieren. Die CopyLocal-Eigenschaft gibt an, ob
diese Kopie erstellt werden muss. Wenn der Wert True lautet, wird der Verweis beim Erstellen des Projekts in das
Projektverzeichnis kopiert. Wenn der Wert False ist, wird der Verweis nicht kopiert.
bzw.
Überprüfen, ob der Assemblyname bereits zuvor gebunden wurde. Ist dies der Fall, wird die zuvor geladene Assembly verwendet.
********
Habt ihr da einen Tip für mich?
Danke,
Martin
ich habe ein kleines Problem mit Assemblyverweisen.
Meine Anwendungsstruktur ist wie hier abgebildet:
http://www.bilderload.com/bild/10318/versionTF0UG.png
Das Problem ist die tools.dll, die ich in zwei verschiedenen Versionen (in unterschiedlichen Verzeichnissen) vorliegen habe. Dies kann leider auch nicht geändert werden und muß so bleiben.
Wenn ich aus der testapp.exe auf die worker.dll zugreife, benutzt diese interessanterweise die Version 1.0.0.0 der tools.dll.
Ich bräuchte es aber so, daß die testapp.exe wie gezeichnet die V1.0.0.0 benutzt und die worker.dll die Version 2.0.0.0.
Im MSDN habe ich dazu folgendes gefunden:
********
Zur Laufzeit müssen sich Komponenten entweder im Ausgabepfad des Projekts oder im Globaler Assemblycache (GAC) befinden.
Wenn das Projekt einen Verweis auf ein Objekt enthält, der sich nicht an einem dieser Orte befindet, müssen Sie den
Verweis beim Erstellen des Projekts in den Ausgabepfad des Projekts kopieren. Die CopyLocal-Eigenschaft gibt an, ob
diese Kopie erstellt werden muss. Wenn der Wert True lautet, wird der Verweis beim Erstellen des Projekts in das
Projektverzeichnis kopiert. Wenn der Wert False ist, wird der Verweis nicht kopiert.
bzw.
Überprüfen, ob der Assemblyname bereits zuvor gebunden wurde. Ist dies der Fall, wird die zuvor geladene Assembly verwendet.
********
Habt ihr da einen Tip für mich?
Danke,
Martin
Comment