Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Prism 2.0 Assemblies über COM laden? (https://www.delphipraxis.net/71676-2-0-assemblies-ueber-com-laden.html)

Boombuler 19. Jun 2006 13:30


2.0 Assemblies über COM laden?
 
Hi @ all

hat jemand eine Idee wie man dotNet 2.0 Assemblies in dotnet 1.1 verwenden kann? Wenn ich das über COM-Schnittstelle versuche klappt das zwar unter Delphi-W32 aber nicht unter Delphi dotNet.

Was mir da evtl schon helfen könnte wäre ein spätes binden der COM-Verbindung!

MfG
Boombuler

Elvis 19. Jun 2006 14:08

Re: 2.0 Assemblies über COM laden?
 
Geht nicht und *kann* nicht gehen. Du kannst nur eine CLR Version pro Prozess haben.
Ein gutes Beispiel ist der OpenDialog i Paint.Net, der sich sofort in Wohlgefallen auflöst, wenn dir irgendein Hirnie eine .Net 1.1 Shellaxt reingehämmert hat.

Du könntest dir die Docs zum dccil durchlesen und gegen 2.0 kompilieren (gab hier auch mal einen Thread von sakura dazu).
Du kannst dir auch überlegen, ob es nicht noch früh genug ist um gleich auf eine .Net 2.0-fähige Sprache umzusteigen, bevor die Umstellung weh tun würde.

Bernhard Geyer 19. Jun 2006 14:26

Re: 2.0 Assemblies über COM laden?
 
Zitat:

Zitat von Elvis
Geht nicht und *kann* nicht gehen. Du kannst nur eine CLR Version pro Prozess haben.
Ein gutes Beispiel ist der OpenDialog i Paint.Net, der sich sofort in Wohlgefallen auflöst, wenn dir irgendein Hirnie eine .Net 1.1 Shellaxt reingehämmert hat.

Hmm? Würde sich für mich nach 'ner gewaltigen Designfehler anhören wenn es hier nicht irgendwelche Möglichkeiten geben würde. Was ist wenn MS irgndwann wirklich auch im BS (-Kern) genügend .NET verbaut hat. Dann kann man nur noch Anwendungen in der passenden .NET-Version laufen lassen. Irgendwelche "Brücken" muss es doch geben um nicht hier zwar die DLL-Hölle ausgestanden zu haben aber die Versionsfessel eingefangen zu haben.

Zitat:

Zitat von Elvis
Du kannst dir auch überlegen, ob es nicht noch früh genug ist um gleich auf eine .Net 2.0-fähige Sprache umzusteigen, bevor die Umstellung weh tun würde.

Oder gleich noch ein Jahr warten bis .NET 3.0 kommmt :-)

Boombuler 19. Jun 2006 14:36

Re: 2.0 Assemblies über COM laden?
 
Zitat:

Zitat von Elvis
Du kannst dir auch überlegen, ob es nicht noch früh genug ist um gleich auf eine .Net 2.0-fähige Sprache umzusteigen, bevor die Umstellung weh tun würde.

Klar und wie erklärt man dem Kunden das man nun erst mal 2 Jahre pause macht weil man mal eben über eine Millionen Zeilen Quellcode umstellen muss??

Hmpf naja dann ist wohl mal wieder Zeit zum diskutieren hier ;)

Greetz
Boombuler

Elvis 19. Jun 2006 15:29

Re: 2.0 Assemblies über COM laden?
 
Zitat:

Zitat von Bernhard Geyer
Zitat:

Zitat von Elvis
Geht nicht und *kann* nicht gehen. Du kannst nur eine CLR Version pro Prozess haben.
Ein gutes Beispiel ist der OpenDialog i Paint.Net, der sich sofort in Wohlgefallen auflöst, wenn dir irgendein Hirnie eine .Net 1.1 Shellaxt reingehämmert hat.

Hmm? Würde sich für mich nach 'ner gewaltigen Designfehler anhören wenn es hier nicht irgendwelche Möglichkeiten geben würde.

Solange die Klassen aus der MsCorelib des alten Codes kompatibel mit ihren Gegenstücken in der neuen MsCorLib sind, könnte man den ganzen alten Kram (inklusive der BCL Libs, minus MsCorLib) in eine AppDomain laden und von da aus 1.1 Libs in der Runtime von .Net 2.0 benutzen.
Wobei du hier eine 2.0 App brauchst, die deine App startet.
Aber das ist so krank, da sage ich doch lieber: Nö, geht nicht. :mrgreen:

Zitat:

Zitat:

Zitat von Elvis
Du kannst dir auch überlegen, ob es nicht noch früh genug ist um gleich auf eine .Net 2.0-fähige Sprache umzusteigen, bevor die Umstellung weh tun würde.

Oder gleich noch ein Jahr warten bis .NET 3.0 kommmt :-)
Witzig, WinFX, aka .Net 3.0, läuft in der Runtime von .Net 2.0. Ich kann da eigentlich kein Problem sehen jetzt 2.0 zu benutzen anstatt immernoch mit 1.1 rumzudümpeln.
Wer noch 1.1 benutzen muss wird sicherlich festgestellt haben, dass er kaum noch Libs findet, die er benutzen kann. ;)

Edit: Hoi, hätte den Editor nicht so lange auflassen sollen...
Tja, Pech gehabt, würde ich da sagen, entweder du kompilierst gegen 2.0 und verlierst jeden IDE Support, oder du suchst dir eine alte Version der Lib, die gegen 1.1 kompiliert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz