Kør batch script from website

Tags:    batch script website

<< < 12 > >>
Hey

Hvordan kan jeg kører et batch script på en webserver, fra en hjemmeside?
Lad os sige jeg har en webserver kørende, hvor jeg så gerne vil kunne kører et batch script fra en hjemmeside, liggende på serveren?



16 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 14 karma
Sorter efter stemmer Sorter efter dato
Hvis det er din egen webserver mener jeg man kan køre exec funktionen.

F.eks. denne funktion vil slukke webserveren:

Fold kodeboks ind/udPHP kode 


Jeg er dog ikke helt sikker.



Okay windows er pænt mærkeligt nu.

Nu virker denne kode hos mig :

Fold kodeboks ind/udPHP kode 


Så kommer en besked fra en program som kaldes "Interactive Services Dection" som fortæller at et program prøver at vise en meddelse og hvis man trykker "Vis meddelsen" kommer man til en "anden skærm" ligesom om Windows går i fuldskærm uden processlinjen også var alle mulige programmer åbne som jeg har forsøgt at åbne.
Det vil sige programmerne er blevet åbne i baggrunden og jeg kan da også se på i windows jobliste men de kommer ikke på processlinjen.

Det skete vist efter jeg begyndte at rode med popen() også da jeg skiftede tilbage til exec() så virkede det.

Skriv mere om det når jeg har fundet ud af mere.

---

Det ser ud til at Vista og 7 bloker services så de ikke kan åbne GUI programmer.

Prøv og luk Apache (httpd.exe) servicen også start den fra kommandoprompten i stedet for : C:\Program Files (x86)\Apache Software Foundation\Apache2.2\bin\httpd.exe

Så virker dette :
Fold kodeboks ind/udPHP kode 

Browseren står så og loader indtil man lukker vlc.



Indlæg senest redigeret d. 10.01.2012 19:42 af Bruger #13010
Hej Mads,

Det kan du jo bare skrive ind i en .bat fil os så køre den.

Gem denne kode som vlc.bat

Fold kodeboks ind/udPHP kode 


og så køre du bare den bat fil via din webside:

Fold kodeboks ind/udPHP kode 






Yep det virker med exec(). Har lige testet lokalt.



Indlæg senest redigeret d. 08.01.2012 23:44 af Bruger #13010
Ja. Jeg kan også godt få det til at virke med de indbyggede commands.
Men kan ikke rigtig få min kode til at virker:
cd C:/
cd program files (x86)/videolan/vlc
vlc.exe -vvv "E:\NAS/Cars_2.iso" --sout "#transcode{vcode=h264,acodec=mp4a,vb=800,ab=128}:standard{access=http,mux=ts,dst=192.168.0.103:1234}"

Har prøvet både at lægge bat filen i system32. eller bare lagt en genvej til vlc ind.

Problem ligger i (tror jeg) at jeg skal have sat directory til vlc mappen, for at kunne bruge koden

Har også prøvet at sætte default directory i cmd, samme problem.

php code:

Fold kodeboks ind/udPHP kode 






Indlæg senest redigeret d. 09.01.2012 21:05 af Bruger #15442
Prøv med den fuldesti :
Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 09.01.2012 21:43 af Bruger #13010
Prøv med den fuldesti :
Fold kodeboks ind/udPHP kode 


Hvis jeg prøver den prøver den bare at load den, men kommer ikke videre.

Når jeg bruger den jeg skrev før, så ser siden ud til at load færdig, men vlc poper ikke op.



Ja det kan jeg godt se, browseren står bare og loader.

Efter hvad jeg kan læse mig på er løsning dette :
http://scootergrisen.dk/phpgrisen/billeder/billed0096.png

Det virker dog ikke på min computer alligevel.



Fandt lige det her:

"If a program is started with this function, in order for it to continue running in the background, the output of the program must be redirected to a file or another output stream. Failing to do so will cause PHP to hang until the execution of the program ends."
http://php.net/manual/en/function.exec.php



Hej Mads,

Prøv eventuelt at køre det i system() i stedet for exec()
fordi system() svare tilbage med fejlmeldingen.

Prøv denne kode:

Fold kodeboks ind/udPHP kode 


Håber dette hjalp dig lidt vider.




<< < 12 > >>
t