Frage

Ich war auf der Suche nach einer Programmiersprache für Desktop-Anwendungen mit einer der größten Einschränkungen:- „Ich muss als native ausführbare Datei ausgeben.“

Ich habe mehrere Optionen untersucht:

  1. Java ist keine sehr gute Option für die Desktop-Programmierung, aber Sie können es trotzdem verwenden.Aber Java zu Exe ist ein Problem. Dies bieten nur GCJ und Excelsior-Jet.
  2. Die .Net-Plattform unterstützt keine native Kompilierung.Es stehen nur sehr wenige teure Werkzeuge zur Verfügung, die diese Aufgabe erfüllen können.
  3. Python ist keine Option für die native Kompilierung.Rechts?
  4. VB6 ist die Option, die mir bleibt.

Wenn ich recht habe, ist VB6 aus der obigen Liste die einzige und wahrscheinlich beste Option, die ich habe.Aber VB6 selbst hat Probleme wie:

  • Es befindet sich seitdem nicht mehr in der Entwicklung
  • Es gibt Fragen zur Unterstützung der VB6-IDE mit Vista

Daher sind meine Fragen:

  1. Möchten Sie der Liste der Programmiersprachenoptionen weitere hinzufügen?
  2. Wenn VB6 angesichts des Entwicklungsstands eine gute/beste Option ist, würden Sie dann die Verwendung von VB6 in dieser Zeit vorschlagen?
War es hilfreich?

Lösung

Was sind aus Neugier die treibenden Faktoren hinter der Einschränkung „Nur nativ-binär“?

Wie andere schon gesagt haben, ist es praktisch unmöglich, Reverse Engineering zu verhindern.(Mir ist klar, dass die Antwort, auf die ich verlinkt habe, im Kontext von .Net steht, aber sie gilt für alle Programme.)

Andere Tipps

Delphi (und die zugrunde liegende Pascal-Sprache) ist immer noch lebendig und gut, wobei die Ausgabe 2010 kürzlich veröffentlicht wurde;wenn Sie über finanzielle Mittel verfügen (mindestens 899 US-Dollar für die günstigste Ausgabe, glaube ich).Es kann sich lohnen, eine kostenlose 30-Tage-Version (oder etwas Ähnliches) herunterzuladen und auszuprobieren.

Sie haben einen Kommentar hinzugefügt, der besagt, dass Sie sie nicht verwenden möchten, weil .NET und Java dekompiliert werden können.Sie könnten einen Obfuscator verwenden, der die Lesbarkeit des Ausgabecodes erschwert.

Visual C++ ist eine Option, allerdings ist die kostenlose Version im Hinblick auf die Erstellung MFC-basierter Anwendungen leider etwas eingeschränkt.

Sie können auch ein anderes GUI-Framework als MFC verwenden, z wxWidgets oder Qt.Mit diesen Frameworks kann ein GCC-Compiler (wie MinGW) verwendet werden.Es gibt mehrere kostenlose IDEs, die mit einem oder beiden dieser Frames funktionieren sollen Qt-Ersteller oder Code::Blöcke.

Ich habe viel Gutes über Delphi gehört, weiß aber sonst nichts darüber.

Ich war an der Suche nach einer ähnlichen Sprache/Plattform für einen Kunden beteiligt, um seine VB6-Anwendung zu ersetzen.Obwohl sie sich schließlich dafür entschieden, alles zu webisieren und alles in Flex neu zu schreiben, schauten sie sich kurz RealBasic an.VB6-ähnliche Syntax und kompiliert zu nativen Binärdateien.

Ich kann nichts darüber sagen, wie es im täglichen Gebrauch ist;Der Prozess sah in Ordnung aus.Ein bisschen von dem RAD-Oh-das-hat-nicht-lange-gedauert-Workflow, den VB6 hatte und nur sehr wenig anderes auch nur annähernd erreicht hat.Für die Personal Edition nicht unverhältnismäßig teuer.

Kasse 'Power Basic' – Es kompiliert „echte“ kleine native EXE-Dateien und stellt eine schnelle VB-ähnliche Basisumgebung bereit und erfordert keine Laufzeitumgebung.Dadurch wird die Demontage deutlich erschwert.Es ist kein VB, aber es ist erschwinglich und leistungsstark.

VB ist eine interpretierte Sprache, die nicht nativ ist, obwohl es vermutlich native Compiler gibt.Außerdem ist die Laufzeitunterstützung ab Windows 7 nicht garantiert.Die IDE und die Laufzeitumgebung weisen in Windows Vista und 7 einige Probleme auf, die hauptsächlich mit UAC und Netzwerklaufwerken zusammenhängen.

Ich würde Delphi oder eine C-Variante vorschlagen, wenn es nativ sein muss.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top