Was ist normalerweise zu tun, um eine WinForms-Anwendung auf einem Mac oder Linux-Rechner auszuführen?Wie ist das plattformübergreifende .Net-Framework wirklich?
a. Einfach kopieren und ausführen (vorausgesetzt, sie haben ein Framework installiert).
b. Neu erstellen.
c. Änderungen am kosmetischen Quellcode
d. Heavy Source Code Modifikationen und Formulare Redesign.
Unter der Annahme, dass die Anwendung entwickelt wird als 100% mittels C# 3-Code verwalteten Visual C# Express oder Visual Studio 2008 Targeting .Net Framework 3.5, entwickelt ohne die Verwendung von 3-rd Party-Komponenten/Bibliotheken, ohne Verkapselung nonmanaged Code oder jede Low-Level-Hacks - nur Standard-Microsoft-dokumentiert .Net Framework C# API verwendet. Oder die gleichen Bedingungen, aber C# 4 Sprache, .Net Framework 4 und Visual Studio 2010.
Gibt es irgendwo einen praktischen Leitfaden für die Entwicklung von Mono-bereiten Anwendungen mit MS .Net Framework und Visual Studio? Irgendwelche Richtlinien, Tipps, spezifische Aspekte, die einen Entwickler darüber informieren, was er wirklich im Kopf behalten muss, um eine leicht zu übertragende Anwendung zu schreiben, ohne jede Funktion in der Mono-Referenz während der Programmierung in Visual Studio nachschlagen zu müssen.
(Sie können weitere Informationen erhalten http://www.mono-project.com/Compatibility) – andypaxo
„Es ist möglich, dass Ihre Anwendung wird nur mit Null-Modifikationen laufen "- Ich kann es kaum glauben, da eine Windows-EXE-Datei auf einer Windows-Maschine gebaut und ausgeführt wird (anders als bei Java, deren JAR-Dateien nicht plattformspezifisch sind). Meinst du, eine .Net EXE soll auf Mac oder Linux mit Mono ohne Wine laufen? – Ivan
@Ivan Ja, eine ausführbare .NET-Datei ist keine normale Windows-Binärdatei, sondern eine Datei, die Code enthält, der auf einer virtuellen Maschine (CLR) läuft, ähnlich wie Java. – andypaxo