Autor Zpráva
Laupe
Profil
zdravim, mam problem
potrebuyji spustit externi program pres php tj. exe soubor nebo bat soubor.

kdyz zavolam prikaz exec("c:\1.exe");

spusti se danny soubor na pozadi (za uzivatele SYSTEM)
bohuzel s timto nelze pak jiz pacovta, potrebuji, aby s aplikaci pak slo nadale we win pracovat. potreboval bych tedy ten soubor spustit za uzivatele Administrator, ktery je prihlaseny na PC.

dale mam problem, ze php ceka az se program ukonci a pote se take ukonci. potrebuji vyresit tento problem, aby se php script ukoncil kdyz spusti program. protoze ten program pobezi treba 4dny.

dekuji za kazdou radu.

PS: jedna se o Windows ;)
izsak
Profil
PHP beží po účtom Apache služby alebo IIS Application Pool-u. S týmito právami teda spúšťa externé aplikácie (a keď už spúšťa ako SYSTEM, tak to je dosť nebezpečné).

Neviem o tom, že by v PHP šlo vyvolať nový samostatný thread (alebo niečo na ten spôsob), ale stačilo by to vyriešiť volaním .exe/.bat súboru, ktorý by následne volal ďalšiu aplikáciu "asynchrónne".
YoSarin
Profil
dale mam problem, ze php ceka az se program ukonci a pote se take ukonci. potrebuji vyresit tento problem, aby se php script ukoncil kdyz spusti program. protoze ten program pobezi treba 4dny.
A to se tu někde nedávno řešilo...
á - tady:
http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=9&topic=49 493
czechport
Profil
Laupe
Pokud jde o to, aby se php skript ukončil po spuštění externího programu, stačí přesměrovat výstup toho programu do nějakého souboru.

A co se týče toho aby php mělo práva Administrátora, tak musíš změnit přihlašování služby Apache ze systémového účtu na uživatelský. Většina služeb se totiž přihlašuje pomocí systémového účtu. Pokud chceš přístup k chráněným prostředkům, je třeba změnit přihlašování na uživatelský účet. V ovládacích panelech jsou "nástroje pro správu", tam pak Služba Component Services a tam si najdi službu Apache popř. Wampapache ... záleží jakou máš instalaci ... pak klikni na vlastnosti, přihlášení a tam to přepni ze systémového na uživatelské, pak už jen vyplníš uživatelské jméno a heslo Administrátora.
Moc to ale nedoporučuji, protože pak bude mít php přístup i k chráněným souborům a složkám!
Toto téma je uzamčeno. Odpověď nelze zaslat.