2016-07-12 2 views
2

Ich habe PHP auf meinem Windows-vps installiert und verfügbar für den Zugriff über Port 80 und von meinem Heim-PC.Wie exe-Datei auf einem Windows-Server über PHP ausführen?

Erstellt eine auto.php Datei, die einen Dateinamen Dateiname.exe auslösen soll. Hier

ist der Code, den ich geschrieben habe (gestohlen aus dem ganzen Netz und arbeitete an ihn)

<?php 
exec('c:\WINDOWS\system32\cmd.exe /c START C:\xampp\htdocs\myy\Filename.exe'); 
    echo "Game server has been started"; 
?> 

Aber wann immer ich auf auto.php klicken, wird es nicht ausgeführt werden, jedoch kann ich einen sehen Die neue Eingabeaufforderung wird im Task-Manager geöffnet, Filename.exe wird jedoch nicht ausgeführt.

aber wenn ich eine Fledermaus-Datei läßt sagen namens erstellen test.bat mit dem folgenden Befehl

copy NUL test.txt 

und die Endung Teil des Skripts statt Dateiname.exe test.bat ändern

dh

<?php 
exec('c:\WINDOWS\system32\cmd.exe /c START C:\xampp\htdocs\myy\test.bat'); 
    echo "Game server has been started"; 
?> 

Es macht einen test.txt benannte Datei erstellen, aber wenn ich den Befehl

START Dateiname.exe

es noch gestartet doesnt bekommen zu ändern, ist nicht sicher, was ich falsch hier zu tun.

Bitte helfen.

Mein Ende Spiel ist in der Lage sein filename.exe zu starten (im selben Ordner wie der auto.php) entfernt vom Browser ausgeführt werden ..

+0

Verwandte hilft, [Wie Sie eine BAT-Datei von PHP ausführen?] (Http://stackoverflow.com/q/835941) – jww

Antwort

0

Die php exec($cmd) Funktion wird Ihren Befehl ausführen, als ob es direkt ist Legen Sie ein Terminal auf dem Server. Das bedeutet, Sie sollten in der Lage sein, einfach

zu haben. Und es sollte funktionieren.

Wenn es immer noch nicht funktioniert, können Sie immer eine Batchdatei erstellen, die wie

START C:\xampp\htdocs\myy\Filename.exe 

Auf den meisten Windows-Systemen eine Verbindung zu dieser Anwendung enthält, wird die START die Eröffnung einer neuen Instanz darstellen Die Standardeingabeaufforderung zum Ausführen des Befehls könnte auch optional sein.

Hoffe, es

+0

Wenn ich den Befehl, den Sie gaben ausführen, das heißt ' START C: \ xampp \ htdocs \ myy \ Dateiname.exe' von cmd, es funktioniert gut, aber wenn ich es in Batch-Datei und dann verwenden Sie PHP, um die bat-Datei mit diesem Befehl in PHP 'exec starten ('START C: \ xampp \ htdocs \ myy \ test.bat '); 'Es wird nicht ausgeführt, aber wenn ich den Befehl wie' copy NUL test.txt' im Batch behalten, dann wird das ausgeführt, aber .exe wird nicht ausgeführt :( – Harsh

+0

Siehst du ein Fenster Popup und dann sofort verschwinden? – RDardelet

+0

Nein :(Nichts dergleichen, startet nicht einmal im Task-Manager. – Harsh