Hi,
Ich beschäftige mich gerade mit 2 Fragen, die es zu beantworten gilt bevor ich mich da intensiver auseinander setzen kann:
Genau gesagt gibt es eine Hauptapplikation, die mit dem Framework 3.5 arbeitet. Meine DLL wird von dieser Applikation eingebunden. Ich wiederum würde in meiner DLL gerne DLLs eines Drittanbieters nutzen, die wiederum das Framework 4.x vorraussetzen. Jetzt dachte ich mir, dass ich diese DLLs dann einfach mitliefere. Aber das wird wohl nicht gehen - sehe ich das richtig? Weil ich den DLLs des Drittanbieters ja nicht sagen kann welches Assembly sie nutzen sollen, korrekt?
In der app.config
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0"/>
</startup>
eintragen, damit sollte es gehen.
MartinH ich glaub Du verwechselst da was.
useLegacyV2RuntimeActivationPolicy
ist dafür da, dass in einer .NET 4.0/4.5/4.5.1 Umgebung weiterhin die .NET 2.0 runtime policy verwendet wird.
medi, .NET ist nicht aufwärtskompatibel.
Du kannst .NET 3.5 DLLs in einem .NET 4.0 Projekt verwenden; aber nicht .NET 4.0 DLLs in einem 3.5 Projekt.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Ich habe eine Anwendung, die gegen .NET 2.0 kompiliert ist, in der ich eine DLL eingebunden habe, die wiederum durch Verwendung eines 3. SDK das .NET 4 Framework benötigt.
Meine DLL habe ich gegen 4.0 kompiliert.
Also ganz ähnlich wie hier beschrieben, oder täusche ich mich da?
2.0er kannste problemlos in 3.5 bzw. 4.0 Projekten verwenden; aber eben nicht 4.0er DLLs in Projekten mit 3.5 bzw 2.0.
Abwärtskompatibel isses, Aufwärtskompatibel nicht.
Du, MartinH, hast Fall 1; medi quasi Fall 2.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code