Ich möchte eine kleine (& lt; 30MB) eigenständige Windows-Programmdatei (eine einzelne Datei), die ein Fenster erstellt, das den Benutzer nach dem Ort eines Verzeichnisses fragt und dann ein anderes Programm in diesem Verzeichnis startet.
Diese ausführbare Datei muss auf XP-, Vista-, Server 2003- und Server 2008-Versionen von Windows in 32-Bit und 64-Bit auf x86-64-Architektur sowie Itanium-Chips ausgeführt werden.
Es wäre spektakulär, wenn wir es nur einmal erstellen müssten, um es auf all diesen Plattformen laufen zu lassen, aber das ist keine Voraussetzung. Dies ist für ein proprietäres System, also GPL-Code ist tabu.
Was ist der schnellste Weg, dies zusammen zu setzen?
Das sind einige Dinge, über die ich nachdenke. Wenn Sie also Informationen über ihre Überlebensfähigkeit haben, bin ich ganz klar:
Was ist mit einem WSH-Skript? Es wird keine exe sein, richtig, aber um nach einem Ordner zu fragen, sehe ich keine Notwendigkeit für eine exe-Datei, geschweige denn eine 30Mb-Datei ...
Ein 1Kb-Skript, speichern Sie es mit der vbs-Erweiterung wie Sie wollen und führen Sie es aus. Falls dies nicht klar ist, werden Sie nach einem Ordnernamen gefragt und dann calc.exe im Unterverzeichnis system32 ausgeführt. Sie können natürlich viel besser als das in 2 oder 4 Kb.
%Vor%Um einen Ordnerbrowser-Dialog anstelle einer EingabeBox hinzuzufügen, überprüfen Sie das heraus.
Klare Vorteile sind:
Ich würde .NET und WinForms verwenden. Die Idee der skriptgesteuerten Lösung ist ansprechend, aber in der Praxis finde ich oft, dass du am Ende durch die Ringe springst, um alles zu tun, was über den Basisfall hinausgeht und immer noch nicht die Flexibilität hast, alles zu tun, was du willst.
Schnellster Weg unter Windows für eine leichte und schnelle GUI? Ein Wort .. Delphi! Es fehlt jetzt die 64-Bit-Unterstützung, aber dann würde FreePascal zur Hilfe kommen .
Eine kleine Stand-alone-Anwendung zu entwickeln und sie schnell zu entwickeln, tut mir leid, sagen Sie, normalerweise widersprüchliche Anforderungen.
Um ehrlich zu sein, würde ich angesichts der unglaublich einfachen Anwendung in C mit direkten Win32-Aufrufen schreiben: ein Aufruf an SHBrowseForFolder (), um das Verzeichnis zu erhalten, und eins an ShellExecuteEx (), um das Programm auszuführen. Sogar MFC ist viel zu schwer für solch eine bescheidene Anwendung. Legen Sie fest, dass die C-Laufzeit statisch verknüpft ist, und Sie sollten die Größe der eigenständigen ausführbaren Datei auf weniger als 100 KB beschränken können. Ein anständiger Windows C-Coder sollte es in weniger als einer Stunde schaffen, vorausgesetzt, Sie haben einen zur Hand.
Tcl / tk ist eine Lösung. Sie können eine einzelne ausführbare Datei (einschließlich benutzerdefinierter Bilder, dlls usw.) verwenden, indem Sie etwas namens "starpack" verwenden - ein virtuelles Dateisystem, das sowohl tcl-Interpreter als auch Anwendungscode ist. Ich denke, es würde vielleicht ein paar Megabytes wiegen.
Aus Ihren Spezifikationen würde ich persönlich vielleicht 15 Minuten brauchen, um eine erste funktionierende Version zu bekommen.
Tcl / Tk hat eine BSD-Lizenz.
Visual Basic war für all seine Schwachstellen in der Vergangenheit hervorragend für super-einfache Anwendungen wie diese.
Ich stimme der obigen Tcl / Tk-Antwort zu. Für weitere Informationen über das Starpack, auf das er sich bezieht, siehe: Ссылка ist es ein Tcl / Tk-Interpreter, der für verschiedene Betriebssysteme verfügbar ist 1 MB. In der Vergangenheit ging es anscheinend um das Aussehen und Verhalten von Tcl / Tk UIs. Dies wurde jedoch durch ein neues Framework mit dem Namen "Tile" behoben, das das native Aussehen des Betriebssystems des Benutzers unterstützt.
Sie könnten dies in MFC tun und eine ausführbare Datei in weniger als 100k haben. Wenn Sie die Größe Ihrer ausführbaren Dateien gering halten möchten, können Sie UPX im Allgemeinen verwenden, um eine EXE-Komprimierung durchzuführen. Wenn Sie ein Beispiel möchten, werfen Sie einen Blick auf uTorrent . Es ist eine voll funktionsfähige BitTorrent-App in weniger als 300.000 ausführbaren Dateien.
Ich benutze HTA (HTML-Anwendung) für schnell und schmutzig form & amp; Skriptanwendungen. Weitere Informationen und Beispiele finden Sie unter Microsoft HTA Developers Center . Dies verwendet im Grunde HTML für das Formular und jede HTML-zugängliche Skriptsprache für das Skript. Normale Browser-Sicherheit wird umgangen, so dass Sie fast alle Interna des Betriebssystems erreichen können. Die obige Seite enthält auch Links zu verschiedenen Tools, die den Scripting-Teil für Sie fast automatisieren.
Ähnlich wie das, was Vinko Vrsalovic gesagt hat, können Sie eine HTA-Anwendung verwenden. Es ist so einfach wie das Erstellen einer Webseite mit Windows-Scripting-Host-Funktionalität. Ich habe ein paar Dienstprogramme mit JScript erstellt und es ist wirklich einfach und schnell Ссылка
Diese Antworten sind unglaublich.
Mit dem Visual Studio Forms-Editor können Sie WinForms erstellen und automatisch den Standard-GUI-Code generieren (was für die meisten anderen Sprachen und Toolkits bestenfalls ein Ärgernis ist). Dann können Sie C # oder eine andere .NET-Sprache verwenden. .NET hat Bestands-Widgets für Dateiwähler. Ich könnte dieses Skript in 20 Minuten schreiben und es wird auf jeder Ihrer Zielplattformen kostenlos laufen. Zeichnen Sie die GUI aus, ziehen Sie eine Dateiauswahl per Drag-and-Drop, füllen Sie vielleicht zwei Haken aus, um die Datei "Eine andere Datei starten, als sie wollten" auszuführen, fertig.
Ich empfehle Autohotkey (AHK) oder Autoit . Beide unterstützen win95 + (mit Vorbehalten für bestimmte Funktionen). Sie können in kleine .exe ohne externe Abhängigkeit (neben nativen DLLs) kompiliert werden.
Pros:
Nachteile:
Tags und Links user-interface windows performance