Ist das starten von .NET erstellte Anwendungen auf anderen Betriebssystem möglich?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Ist das starten von .NET erstellte Anwendungen auf anderen Betriebssystem möglich?

    Hallo liebe Community!

    So viel wie ich vestehe ist .NET eine Programmierplattform. Ist es auch möglich oder teilweise möglich, erstelle Programme auf .NET in C# auf anderen Betriebsystem laufen zu lassen wie z.B Mac, Linux, ... ?


    MfG,
    Zer0_x :)
  • Moin,
    ja das ist möglich: [wikipedia]Mono-Projekt[/wikipedia]
    Damit wird es möglich, unter Windows für .NET erstellte Programme ohne Neukompilierung unter unixoiden und anderen Betriebssystemen laufen zu lassen.

    Zum Status von C#: The C# compiler is feature complete for compiling C# 1.0 and 2.0 (ECMA), and also contains many of the C# 3.0 features.
  • @d0nut:
    • Muss ich da nicht mit Problemen bzw. Einschränkungen rechnen? Wenn z.B auf Windows bestimmte Oberflächenelemte existieren und die auf Linux nicht gibt muss es doch zu komplikationen kommen ?
    • Kann ich das dann verstehen das es Betriebssystemplattform unabhängig ist ?!
    • Muss ich mit Vor- und Nachteilen rechnen ?
    • Kannst Du das genauer erklären oder mehr Informationen geben ?
    • Auf welchen Betriebsystemen ist das noch möglich ?
    • Muss auf den anderen Betriebsystem auch .NET installiert sein ?
    Danke!


    MfG,
    Zero_x :)
  • Also ich kann dir zumindest teilweise Antworten geben:
    1. Ja es kann sicherlich zu Problemen kommen, wie in den meisten Techniken, die versuchen platformunabhänig zu sein. Das bedeutet aber nicht, dass du die Technik meiden solltest sondern nur, dass du es in den unterschiedlichen Systemen testen musst. Du kannst also nicht blind davon ausgehen, dass alles klappt. Details kann ich dir aufgrund mangelnder .Net/Mono-Erfahrung nicht nennen. Vielleicht sagen noch Andere etwas dazu.
    2. Ja. Du hast ja dann .Net oder Mono auf dem Betriebssystem installiert. Die erledigen dann die Kommunikation zwischen deiner Anwendung und dem Betriebssystem.
    3. Gegenüber was? Natürlich kannst du nur Features nutzen, die von allen Betriebssystemen unterstützt werden. Für die meisten Anwendungsprogramme sollte das aber kein Problem sein.
    4. Ich weiß nur, dass .Net-Anwendungen dank Mono auch unter Linux, Mac. und Co. laufen sollen. Dieses Projekt ist aber nicht unter dem Dach von Microsoft. Dadurch ist es denkbar, dass noch nicht alles 100% unterstützt wird. Allerdings sollten das Ausnahmen sein. Meine Kentnisse sind hier - wie gesagt - nicht all zu umfassend. Am besten du verwendest auch unter Windows Mono. Dann kann dir .Net egal sein.
    5. Für alle Betriebssysteme, für die es Mono gibt: go-mono.com/mono-downloads/download.html
    6. Nein, .Net gibt es soweit ich weiß nur für Windows. Deswegen gibt es ja das Mono Projekt.

    Vielleicht können erfahrenere .Net-Programmierer meine Aussagen ergänzen/korrigieren.
  • Du solltest allerdings bedenken, dass jeder, der das Programm verwenden möchte .Net bzw Mono installiert haben muss.
    Als Alternative könntest du überlegen auch eine Sprache wie C++ zu nutzen. Hier verwendest du allerdings nur platformunabhänige Bibliotheken (Qt für die GUI zum Beispiel). Dann kannst du den selben C++ Quellcode einfach für verschiedene Systeme compilieren.