Zitat:
Jain. Heute bist Du darauf angewiesen, dass die von Deinem Programm verwendeten DLLs ein einer entsprechenden Version vorliegen, so Du sie nicht mitlieferst. Letzteres kannst Du bei .NET aber auch.
Also ich habe das Konzept anders verstanden:
1.) Du schreibst ein Assembly in einer ersten Version (1.0) - also sozusagen eine
DLL im .NET - Zwischencode, die weiterverwendet werden kann.
2.) Du schreibst eine andere Software, die diese Version benötigt.
3.) Du entwickelst Dein Assembly weiter (Version 2.0), und fügst hierbei zum Beispiel inkompatible Änderungen zu 1.0 ein.
4.) Jemand anderes verwendet Version 2.0 Deines Assemblys und liefert seine Software aus.
Ein Zielsystem, auf dem Die Software aus 2 und 4 laufen müsste, wäre ohne .NET jetzt ziemlich aufgeschmissen. Zwei Versionen einer
DLL - dazu noch inkompatibel zueinander - mag Windows nicht wirklich.
Das .NET Framework hat hierbei den Vorteil, daß es sich die letztendlichen Kompilate beider Assemblys cached, und den Zugriff selber verwaltet. Somit können beide Versionen nebeneinander Existieren und bei Bedarf angesprochen werden.