AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi 2005 / 2006 .net und plattform unabhängigkeit
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi 2005 / 2006 .net und plattform unabhängigkeit

Ein Thema von commandah · begonnen am 5. Jan 2006 · letzter Beitrag vom 5. Jan 2006
Antwort Antwort
commandah

Registriert seit: 9. Sep 2005
25 Beiträge
 
#1

Delphi 2005 / 2006 .net und plattform unabhängigkeit

  Alt 5. Jan 2006, 13:54
Hallo zusammen.
Ich habe mal eine dumme frage, wenn ich mit delphi 2005 eine neue .net anwendung erstelle, wie bekomme ich es denn dann hin, das diese auch auf Linux u mac funzt?
Denn wenn ich die Anwendung kompiliere, dann erzeugt es doch auch eine exe, und die kann ich doch schlecht auf nem Linux oder Mac rechner laufen lassen oder?
cu
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Delphi 2005 / 2006 .net und plattform unabhängigkeit

  Alt 5. Jan 2006, 13:59
Hi,

Wenn Du eine .NET Anwendung erstellt, kannst Du diese ggf. mit einer .NET Implementierung für Linux ausführe wie z.B. Mono. Diese haben aber noch nicht ganz den Featuresstand von .NET erreicht, weshalb einiges u.U. nicht funktioniert.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
commandah

Registriert seit: 9. Sep 2005
25 Beiträge
 
#3

Re: Delphi 2005 / 2006 .net und plattform unabhängigkeit

  Alt 5. Jan 2006, 14:21
und wie mach ich das? bzw wo stell ich das ein/um
cu
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Delphi 2005 / 2006 .net und plattform unabhängigkeit

  Alt 5. Jan 2006, 14:24
Zitat von commandah:
und wie mach ich das? bzw wo stell ich das ein/um
Also ich habe mich noch nicht intensiv damit beschäftigt, aber soweit ich das weiss, musst Du einfach die mit mit .NET* erstellte Exe-Datei auf Linux mit installiertem Mono ausführen. Sollte ähnlich wie mit Java funktionieren, soweit ich das verstanden habe.

*: Nur Windows.Forms! VCL.NET gibts imho nicht für andere Plattformen.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#5

Re: Delphi 2005 / 2006 .net und plattform unabhängigkeit

  Alt 5. Jan 2006, 14:25
Zitat von commandah:
Ich habe mal eine dumme frage, wenn ich mit delphi 2005 eine neue .net anwendung erstelle, wie bekomme ich es denn dann hin, das diese auch auf Linux u mac funzt?
Für die Oberfläche:
Entweder Gtk# benutzen und darauf vertrauen, daß der Mac-Benutzer eine Möglichkeit gefunden hat, Gtk+-Anwendungen zu starten (unter MacOS X ist Cocoa üblich, Cocoa# existiert, aber ist nicht unter Windows und Linux nutzbar), oder dich an der Vollständigkeitsliste für den System.Windows.Forms-Namespace von Mono orientieren und darauf verzichten, die Features zu nutzen, die dort als nicht implementiert gekennzeichnet sind.
Für den Rest:
Auf P/Invokes verzichten, nur reinen Managed-Code verwenden (also auch keine Pointer, solltest du dich für Managed C++ interessieren), nichts Borland- oder Microsoft-spezifisches verwenden (auf System.*-Namespaces beschränken) und für ebenfalls an der Vollständigkeitsliste von Mono orientieren (größtenteils ist aber alles implementiert).

Zitat von commandah:
Denn wenn ich die Anwendung kompiliere, dann erzeugt es doch auch eine exe, und die kann ich doch schlecht auf nem Linux oder Mac rechner laufen lassen oder?
Das ist für den Zweck irrelevant. Die existierenden portablen .NET-Frameworks nehmen die Echse als Argument und starten diese, sie verfügen also über einen eigenen Loader, der das Format der Echse versteht. Ein typischer Mono-Aufruf sieht beispielsweise so aus:
Code:
mono MeineAnwendung.exe
Das funktioniert unter Windows, Linux und MacOS. Linux bietet außerdem ähnlich wie Windows die Möglichkeit, entsprechend der Dateiendung "exe" das Framework zu starten. Ob das mit MacOS ähnlich geht, weiß ich nicht, da ich nicht weiß, ob das verwendete BSD sowas kann (OpenBSD wird es vermutlich nicht können, nehme ich an).

Edit:
Zitat von mirage228:
VCL.NET gibts imho nicht für andere Plattformen.
Bedingt richtig. Die VCL.NET macht massiv benutzung von nativen Funktionen (via P/Invoke). Das *könnte* man *teilweise* mit WinE hinbiegen, wird aber vermutlich mehr Frickelei als Freude werden. Ich würd's gar nicht erst versuchen.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:20 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