I have php installed on my windows vps and available to access via port 80 and from my home PC.
Created an auto.php file which should trigger a file name Filename.exe.
Here is the code i have written (stolen from all over the net and worked on it)
<?php
exec('c:\WINDOWS\system32\cmd.exe /c START C:\xampp\htdocs\myy\Filename.exe');
echo "Game server has been started";
?>
But when ever i click on auto.php, it does not execute, However I can see a new command prompt is opened in Task Manager, but Filename.exe is not executed.
However if i create a bat file named lets say test.bat with the following command
copy NUL test.txt
and change the ending part of the script to test.bat instead of Filename.exe
i.e.
<?php
exec('c:\WINDOWS\system32\cmd.exe /c START C:\xampp\htdocs\myy\test.bat');
echo "Game server has been started";
?>
It does create a file named test.txt, but if i change the command to
START Filename.exe
it still doesnt get launched, am not sure what am I doing wrong here.
Please help.
My end game is to be able to launch filename.exe (is in same folder as of auto.php) to run remotely from browser..
The php exec($cmd)
function will execute your command as if it's directly put in a terminal on the server. That means you should be able to simply have
exec('START C:\xampp\htdocs\myy\Filename.exe');
And it should work.
If it still doesn't work, you can always create a batch file which contains a call to that application like
START C:\xampp\htdocs\myy\Filename.exe
On most windows systems, the START
will represent the opening of a new instance of the default command prompt to run the command, it could be optional as well.
Hope it helps
here is the way I mad it work in my requirement
exec('sample.bat',$rt);
the bat file is
@echo off
START AfterFX.exe -r E:\work\MovieMaker.jsx
pause
here after start
, I call the .exe file and transferred the file to run into the software. It worked for me.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With