Programme für Windows XP mit GUI und ohne Laufzeitbibliotheken schreiben
-
Hallo,
ich hab mich jetzt durch dutzende Posts und Themen geklickt aber nicht das gefunden, wonach ich wirklich suche. Ich Programmiere seit einiger Zeit in Java, vor kurzem auch mit C#, aber bin sehr unzufrieden, deshalb such ich eine gescheite "Sprache" mit passender IDE, am liebsten mit einem ausgefeilten GUI Editor, mit dem ich Programme schreiben kann, die ohne jegliche Runtimes auf nackten WinXP Systemen auskommt.
Hab mich an Qt und Sally IDE versucht, abe rbeide male klägliche versagt
Danke!
-
Womit warst du denn nicht zufrieden? Sowohl mit C# als auch Java kann man wunderbar GUIs erstellen.
Du hast QT erwähnt - dazu brauchst du doch ebenfalls ne Runtime. Wird halt evtl. statisch zugelinkt, aber nichtsdestotrotz musst du die Runtime mitliefern.
Wenn du keine anderen Abhängigkeiten willst benutz C mit der WinApi, aber daran wird man wenig Freude haben wenn man das mit modernen Technologien und deren Komfort vergleicht.
-
Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Andere GUIs - Qt, GTK+, wxWidgets verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Talla schrieb:
Womit warst du denn nicht zufrieden? Sowohl mit C# als auch Java kann man wunderbar GUIs erstellen.
Ja klar, vor allem mit Visual C# bin ich äusserst zufrieden, aber ich will bekannten und Freunden nicht zumuten für kleine Tools die 25 MB große Runtime zu installieren.
Will EXEs < 1-2 MB, die mit einem eifnachen Doppelklick funzen. Wie machen es denn all die anderen Software Hersteller?! Photoshop, XNView, Outlook, Firefox, usw. die kommen mit 2-3 MB (bzw. PS/ Outlook zählt nicht) aus...
-
Die benutzen z.B MFC oder wxWidgets. Google Chrome benutzt z.B. WTL.
Die sind natürlich keine 25 MB groß, müssen aber auch mitgeliefert werden (sind so 2 bis 3 MB).
Wenn es richtig minimalistisch sein soll:
-
Talla schrieb:
Du hast QT erwähnt - dazu brauchst du doch ebenfalls ne Runtime. Wird halt evtl. statisch zugelinkt, aber nichtsdestotrotz musst du die Runtime mitliefern.
Naja, das sind klassische Libraries. Willst du jetzt jede Lib als Runtime bezeichnen?
-
cetryn schrieb:
Hallo,
ich hab mich jetzt durch dutzende Posts und Themen geklickt aber nicht das gefunden, wonach ich wirklich suche. Ich Programmiere seit einiger Zeit in Java, vor kurzem auch mit C#, aber bin sehr unzufrieden, deshalb such ich eine gescheite "Sprache" mit passender IDE, am liebsten mit einem ausgefeilten GUI Editor, mit dem ich Programme schreiben kann, die ohne jegliche Runtimes auf nackten WinXP Systemen auskommt.
Hab mich an Qt und Sally IDE versucht, abe rbeide male klägliche versagt
Danke!
QTCreator von Troltech.
Aber man muss halt C++ können und die Doku lesen, einfach installieren und Anwendung zusammenklicken ist da leider nicht.
rya.
-
Also Photoshop, Firefox etc. kommen doch nicht mit einer exe die nur 2-3 MB gross ist aus! Da liegen doch noch mehrere DLLs im Ordner die unbedingt benötigt werden, beim Installieren (ausser portable Apps) werden auch meist noch Dinge im Hintergrund installiert (VC-Runtimes etc.).
Es gibt zwei Varianten:
A) Du willst unbedingt nur eine Exe haben, ohne DLLs, die auf einem frischen XP läuft, dann musst du statisch linken:
- kostenlos: z.B. wxWidgets (evtl. WTL, GTK+,...)
- Qt statisch Linken mit kostenloser Version nicht erlaubt !
- MFC kostet auch, kostenlose Express hat kein MFC
Wenn DLLs mit im Ordner sein dürfen (einfaches Kopieren der DLLs und Exe möglich) dann kann man z.B. Qt kostenlos (LGPL) nehmen.
Zur Exe müssen ein paar Qt-DLLs und je nach Kompiler z.B. mingw10.dll hinzukopiert werden.
Der Qt-Creator 1.0 mit Qt4.5 (SDK 2009.01) ist doch genial. Toller GUI-Editor und sehr einfach zu handhaben, kompakt in einer IDE. Ich würde das benutzen (und mache es selber auch).Sowas gibts auch noch:
http://www.realsoftware.com/realbasic/UPDATE:
- Qt kann auch statisch gelinkt werden wenn eigener Code veröffentlicht wird (GPL).
-
Danke für die zahlreichen Antworten, das heißt also, dass die ideale Lösung die kommerzielle MFC wäre... Naja, das ist keine alternative für einen Hobbieprogrammierer wie mich.
Hab beim Qt die DLL Files zusammengesucht und alleine die GUI Datei ist satte 12 MB Groß, leider löst das mein Problem auch nicht. Wobei Qt wirklich ein starkes Teil ist und ich selbstverständlich bereit wäre von c# auf c++ umzusteigen.
Ich dachte halt, dass es etwas out-of-the-box gibt, dass Visual C# ähnelt, jedoch ohne Runtimebibliotheken auskommt.
Kann ich bei C# durch hinzufügen der benötigten DLLs im selben Verzeichnis die Runtimeinstallation umgehen?!
Gruß
cetryn
-
Naja, wenn es nur Simple GUI ist, kannst du auch mit wxWidgets statisch linken. Dann sind die exe so < 3 mb.
QT könntest du afaik statisch linken, wenn die Anwendung unter GPL steht.
-
cetryn schrieb:
Ich dachte halt, dass es etwas out-of-the-box gibt, dass Visual C# ähnelt, jedoch ohne Runtimebibliotheken auskommt.
Warum lesen die Leute nie richtig die Antworten? Es gibt natürlich Libraries die du statisch linken kannst:
WTL, wxWidgets, fltk und fox-toolkit.Qt darf man aus rechtlichen Gründen (LGPL/GPL) nicht statisch linken, außer man kauft eine Lizenz. Aber mit den oben genannten vier Libs kannst du statisch linken und die sind auch recht klein. Wie du auf MFC als einzige Alternative kommst, ist mir schleierhaft.
cetryn schrieb:
Kann ich bei C# durch hinzufügen der benötigten DLLs im selben Verzeichnis die Runtimeinstallation umgehen?!
Nein.
-
Bulli schrieb:
Qt darf man aus rechtlichen Gründen (LGPL/GPL) nicht statisch linken, außer man kauft eine Lizenz.
Stimmt so nicht. Wie vorher schon einmal erwähnt wurde, darf man das sehr wohl auch ohne irgendetwas zu kaufen, nur muss das Ganze dann unter die GPL gestellt werden.
-
JustSomeCoder schrieb:
Bulli schrieb:
Qt darf man aus rechtlichen Gründen (LGPL/GPL) nicht statisch linken, außer man kauft eine Lizenz.
Stimmt so nicht. Wie vorher schon einmal erwähnt wurde, darf man das sehr wohl auch ohne irgendetwas zu kaufen, nur muss das Ganze dann unter die GPL gestellt werden.
1. Wenn man sein Werk ebenfalls unter GPL stellt. Davon kann man erstmal nicht prinzipiell ausgehen.
Aber viel wichtiger:
2. Du darfst es trotzdem nicht statisch mit der MSVC-Runtime linken! Weil die MSVC auch unter GPL kommen müsste.
-
Man sollte einfach beachten, das es mehr als Qt auf diesem Planeten gibt.
Vorallem wenn jemand nicht viel mit rumschleppen will.
-
Also, noch einmal vielen Dank an alle die geholfen haben, aber irgendwie bin ich nicht ganz überzeugt bzw. scheitert es z.T. am Know-How... Ich werde die Augen weiter offen halten, aber noch einen Zusatz für alle Nachfolgenden Leser:
-> http://en.wikipedia.org/wiki/Graphical_user_interface_builder
cetryn
-
cetryn schrieb:
Kann ich bei C# durch hinzufügen der benötigten DLLs im selben Verzeichnis die Runtimeinstallation umgehen?!
Mal eine ganz andere Frage: Welche Windowsversionen willst du unterstützen.
Als ich jetzt ein blankes XP installiert, und alle verfügbaren Updates & Servicepacks installiert habe, war die Runtime von .Net 3.5 SP1 auf dem System (Bei Vista ist dies auch so).
Welche Version bei einem aktuell gehaltenen 2000 automatisch dabei sind, kann ich aber nicht sagen (gehe von 2.0 aus).
cu André
P.S: Ja es gibt angeblich Möglichkeiten C# "statisch" zu linken, aber bei meiner Suche bin ich auch auf Problembeschreibungen gestoßen - da es mich aber nur am Rande interessiert hat, habe ich bei der Suche nie sehr viel Zeit investiert.