PHP 2 .EXE Compiler

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

  • einen PHP Code ausführbar machen so dass PHP nicht installiert sein muss um das Script zu starten
    Ich erkläre hier wie man PHP Code zu einer Exe Datei compiliert in diesen Beispiel als Konsole-Anwendung ohne GUI.
    Klar ist das nicht ordentliches programmieren aber für gewisse Zwecke dennoch eine einfache saubere Lösung.

    Zunächst benötigen wir einen Compiler ich empfehle Bamcompile bambalam.se/bamcompile/ Sources sind auch dabei
    Nach dem Download entpacken.

    Das Programm lässt sich mit folgenden Parametern starten:

    Optionen:
    -w Konsolen Fenster verstecken (nur wenn man WinBinder also eine GUI verwendet)
    -c Die fertige .exe mit UPX Komprimieren
    -d PHP Dateien nicht codieren
    -e:extension.dll Damit lassen sich PHP Extensions einbinden
    -i:icon.ico Fügt ein Icon ein damit die fertige .exe auch ein kleines Bild hat

    Quellcode

    1. bamcompile [-Optionen] PHP-Datei.php EXE-Datei.exe


    die Optionen lassen sich auch in eine .bcp Datei speichern dann muss man nur noch diese Datei als Startparameter angeben

    Quellcode

    1. bamcompile projectfile.bcp


    Beispiel Aufbau einer .bcp Datei:

    Quellcode

    1. ; PHP Datei
    2. mainfile test.php
    3. ; .exe Datei Name
    4. outfile meinprogramm.exe
    5. ; .exe Icon
    6. ;icon icon.ico
    7. ; .exe Komprimieren
    8. compress
    9. ; Fertige .exe als GUI
    10. ;windowed
    11. ; Pfad wo die .exe gespeichert werden soll
    12. destination /
    13. ; Dateien mit einfügen (für GUI)
    14. ;embed project_dir
    15. ; PHP Extension laden
    16. extension php_gd2.dll
    17. ; Fertigen Code nicht codieren
    18. dontencode
    Alles anzeigen




    Und damit wir zum compilieren nicht ständig in die Konsole müssen hier noch ein Beispiel für eine Start Datei.



    Quellcode

    1. @echo off
    2. bamcompile projectfile.bcp



    der Code muss als .bat Datei gespeichert werden dann lässt sich diese Datei ganz normal starten.



    Das Programm arbeitet mit PHP 4.4.4
    Eine häufige Fehler Ursache ist wenn man vergisst die passenden Extensions zu laden bei Funktionen wie z.B fsockopen(); da muss die php_sockets.dll eingebunden werden.
    Das fertige Programm stürzt einfach so ab ? Dann bitte die Laufzeit erhöhen mit set_time_limit(0);

    9.492 mal gelesen