Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Win32 nach .Net portieren (https://www.delphipraxis.net/62025-win32-nach-net-portieren.html)

Matze 29. Jan 2006 21:40


Win32 nach .Net portieren
 
Hi zusammen,

ich habe hierzu leider nichts finden können.
Gibt es die Möglichkeit, Win32 Anwendungen nach .NET zu Portieren, damit diese auch unter Linux mit Mono laufen?

Es handelt sich um etwas recht komplexes, mit Komponenten wie dem SynEdit, der Virtual TreeView, TBX etc. Ich kann mir nicht vorstellen, dass es so ohne weiteres möglich ist, doch bevor ich's gleich abhake, frage ich lieber mal.

Phoenix 29. Jan 2006 21:59

Re: Win32 nach .Net portieren
 
Hi,

mit mono wirst Du im Bereich Windows Forms eh keine Chance haben. Da nimmst Du lieber dotGNU. Und mit visuellen Komponenten, vor allem mit solchen die auf der VCL basieren, wirst Du auch massivste Probleme haben. Das Problem ist, dass die Dinger nunmal P/Invokes (Platform-Invokes, will heissen Win32-API Calls) benutzen, und die stehen Dir unter Linux nicht zur Verfügung.

Du kannst sicher ohne weiteres die Programmlogik portieren, aber die Oberfläche würde ich mit reinen Windows.Forms-Komponenten neu machen.

Matze 29. Jan 2006 22:02

Re: Win32 nach .Net portieren
 
Hallo Sebastian

Zitat:

Zitat von Phoenix
Du kannst sicher ohne weiteres die Programmlogik portieren, aber die Oberfläche würde ich mit reinen Windows.Forms-Komponenten neu machen.

Danke, doch habe ich unter den WinForms keine Komponenten wie das SynEdit oder ähnlichem, zumindest konnte ich nichts finden.

Phoenix 29. Jan 2006 22:05

Re: Win32 nach .Net portieren
 
Ich denke mal das Du vielleicht mit dotGNU in Kombination mit WINE eine kleine Chance hast. Ich würde mal ein Testprojekt mit den einzelnen Komponenten als VCL-.NET Anwendung erstellen (einfach nur die Kompos draufziehen und kompilieren) und das testen. Wenn WINE greift könnte es sein, dass das sogar wirklich geht.

Matze 29. Jan 2006 22:08

Re: Win32 nach .Net portieren
 
Hm, dazu müsste ich erst einmal Linux installieren, aber das lässt sich einrichten. Nur kam auch eine Anfrage, ob ich das Programm nicht für das .NET Framework (1.1) aufbereiten könne, damit es auch unter MAC OS-X läuft und das kann ich definitiv nicht testen.

turboPASCAL 29. Jan 2006 22:10

Re: Win32 nach .Net portieren
 
Hm, da ich keine SynEdit und TBX - .NET-Komponenten bzw. Ersatz kenne wird wohl Dein Vorhaben nicht von Erfolg gekrönt sein. :(

Linux unterstützt .NET ? -> http://www.mono-project.com/Main_Page

Ich denke die jetzige Version von Mono (http://go-mono.com/archive/1.0/features.html ) ist noch ein wenig unausgereift. :gruebel:

Wenn es denn ein Delphiprogramm sein soll würde ich mich an Lazarus halten und die Sache geich unter diesem Betribssystem machen.

//Edit: Huch, vier neue Beiträge und nix roter Kasten ?

Matze 29. Jan 2006 22:14

Re: Win32 nach .Net portieren
 
Hm danke. Schade, dann wird das wohl nichts. Es handelt sich bereits um einige zehntausend Zeilen Code und das kann/möchte ich nicht alles nochmals neu schreiben müssen.

turboPASCAL 29. Jan 2006 22:22

Re: Win32 nach .Net portieren
 
:gruebel: ...och nur so 'n paar tausend. Da reicht doch ein Wochenende.... ;)

Matze 29. Jan 2006 22:25

Re: Win32 nach .Net portieren
 
Zitat:

Zitat von turboPASCAL
:gruebel: ...och nur so 'n paar tausend. Da reicht doch ein Wochenende.... ;)

Da ich so gut wie keine Komponente, die ich im Projekt nutze, verwenden kann, dauert das sicher mehrere Wochen. :(

Elvis 30. Jan 2006 05:55

Re: Win32 nach .Net portieren
 
So, dann melde ich mich auch mal...
Zitat:

Zitat von Phoenix
mit mono wirst Du im Bereich Windows Forms eh keine Chance haben. Da nimmst Du lieber dotGNU.

Ich weiß nicht wie oft ich das schon von dir gehört und wie oft ich daraauf gekontert habe, dass monos SWF support mittlerweile excellent ist.

Ganz ehrlich, ich würde diesem Haufen von pseudo-faschistichen MS-Hassern(einfach mal deren Homepage lesen :wall: ) nicht so weit über den Weg trauen, dass ich ein Projekt von ihnen abhängig mache (ging an pNet). Die haben es doch gerade mal geschafft ihren erbärmlichen Interpreter auf Windows und Linux durch einen JIT zu ersetzen. :roll:

Mono ist definitiv die professionellere Plattform. Und btw, alle meine alten 1.1 Projkte liefen problemlos unter Mono. Selbst Invokes sind kein Problem, da man Aliase für Bibliotheken angeben kann. X.dll heißt dann einfach X.so unter Linux.
Zitat:

Du kannst sicher ohne weiteres die Programmlogik portieren, aber die Oberfläche würde ich mit reinen Windows.Forms-Komponenten neu machen.
Jo, genau das würde ich auch vorschlagen.
GUIs sind einfach nicht wirklich portierbar. Die VCL.Net dafür herzunehmen und sich damit ganz andere Probleme einzuhandeln ohne wirklich .Net-Vorteile zu gewinnen, halte ich sowieso für so sinnvoll wie einen Hummer in der Großstadt fahren...

Als SynEdit-Ersatz wäre der TextEditor von #develop möglich. Baer der erfordert die GPL.
Der GPL-Virus ist in der .Net/Mono-Welt auch viel verbreiteter als in der Delphi-Welt, das Problem wird dir also öfter begegnen...
Nachdem du Code und GUI getrennt hast, könntest du dir mal ShineOn als Kompatibilitäts layer für die Delphi RTL anschauen. Es hat eine Trennung von puritsischem .Net und Invokes (Die Bibliotheken mit Invokes enden auf .Win32). Und es wird auch ständig gegen Mono getestet.

Oh eins noch: Mono mag zwar nur SWF auf dem Stand von .Net 1.1 besitzen, aber du kannst bereits generics verwenden, was zusmmen mit der restlichen .Net FCL ganz schnell 10.000 Zeilen in einen lachhaften Bruchteil verwandeln kann. :zwinker:


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:36 Uhr.
Seite 1 von 2  1 2      

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