Ik zit met een vervelend probleem. Ik ben bezig met een webapplicatie te schrijven voor een magazijn. Nu is het de bedoeling, dat na het verzamelen van diverse gegevens een label geprint wordt. Het printen van het label gebeurt aan de hand van een stukje externe software. Dit stukje software kan ik aanspreken doormiddel van een commandline opdracht. Dit is mij allemaal gelukt, maar......
Als ik deze commandline uitvoer als gebruiker (administrator) door erop te klikken (print.cmd), dan wordt het externe programma geopend, label geopend en gegevens ingevuld en geprint en programma wordt netjes afgesloten, zoals het hoort te gaan.
Als ik mijn php script met behulp van exec het commandline probeer te laten openen, wordt het externe programma geopend, en gebeurt er vervolgens niks. In taakbeheer zie ik vervolgens het externe programma geopend zijn onder IUSR account net als PHP-CGI ook onder IUSR account. als ik deze sluit in taakbeheerloopt mijn script af. anders geeft mijn script na 30 seconden een timeout.
Op de één of andere manier heeft IUSR niet genoeg rechten, daarom heb ik al even als test IUSR member of administrators gemaakt (en groep guest weggehaald), echter leverd dit niks op. Dus maar weer gelijk weer terug gezet (aangezien dit niet echt veilig is).
ook heb ik geprobeerd om de default website te draaien onder administrator account, ook dit hielp niet. Het externe programma wordt wel gestart, maar blijft dan hangen.
Aangezien ik developer ben en geen systeembeheerder, raken mijn opties (zover ik die ken) een beetje op. Ik vermoed dat er en optie binnen IIS is die speciale applicaties rechten kan geven. Of dat er bij PHP-CGI opties zijn die dit werkend moeten krijgen.
Weet er iemand hoe ik een extern programma kan (en mag) draaien vanaf IUSR?
ter info het systeem:
windows 2003 standaard x64 server
php 5.2.3
update 1: Blijkbaar kan je ook IUSR rechten geven op cmd.exe, lv.exe (externe programma) en print.bat. Maar dit helpt ook niet.
Eventueel bijkomend probleem is dat het externe programma een kleine GUI opstart, ik weet niet hoe windows daarop reageerd bij user IUSR)
PRB: IIS 6.0: CGI Code That Calls External Applications May Fail
het voorbeeldje vanaf de microsoft site met het ping commando wil wel werken... nu alle rechten nagelopen, maar dit programma wil niet werken....
Als ik deze commandline uitvoer als gebruiker (administrator) door erop te klikken (print.cmd), dan wordt het externe programma geopend, label geopend en gegevens ingevuld en geprint en programma wordt netjes afgesloten, zoals het hoort te gaan.
Als ik mijn php script met behulp van exec het commandline probeer te laten openen, wordt het externe programma geopend, en gebeurt er vervolgens niks. In taakbeheer zie ik vervolgens het externe programma geopend zijn onder IUSR account net als PHP-CGI ook onder IUSR account. als ik deze sluit in taakbeheerloopt mijn script af. anders geeft mijn script na 30 seconden een timeout.
Op de één of andere manier heeft IUSR niet genoeg rechten, daarom heb ik al even als test IUSR member of administrators gemaakt (en groep guest weggehaald), echter leverd dit niks op. Dus maar weer gelijk weer terug gezet (aangezien dit niet echt veilig is).
ook heb ik geprobeerd om de default website te draaien onder administrator account, ook dit hielp niet. Het externe programma wordt wel gestart, maar blijft dan hangen.
Aangezien ik developer ben en geen systeembeheerder, raken mijn opties (zover ik die ken) een beetje op. Ik vermoed dat er en optie binnen IIS is die speciale applicaties rechten kan geven. Of dat er bij PHP-CGI opties zijn die dit werkend moeten krijgen.
Weet er iemand hoe ik een extern programma kan (en mag) draaien vanaf IUSR?
ter info het systeem:
windows 2003 standaard x64 server
php 5.2.3
update 1: Blijkbaar kan je ook IUSR rechten geven op cmd.exe, lv.exe (externe programma) en print.bat. Maar dit helpt ook niet.
Eventueel bijkomend probleem is dat het externe programma een kleine GUI opstart, ik weet niet hoe windows daarop reageerd bij user IUSR)
PRB: IIS 6.0: CGI Code That Calls External Applications May Fail
het voorbeeldje vanaf de microsoft site met het ping commando wil wel werken... nu alle rechten nagelopen, maar dit programma wil niet werken....
[ Voor 11% gewijzigd door Rockafello op 18-12-2007 16:28 ]