System Befehl "Zugriff verweigert"

speedyggg

Erfahrenes Mitglied
Hallo Phpler,

folgendes Problem versuche ich vergebens zu bekämpfen.

ich habe eine kleines Script in dem ich einen System - Befehlabsetze.

Code:
system ('shutdown -r -f -m \\hostname');

Wenn ich diesen Befehl absetze kommt die Fehlermeldung "Zugriff verweigert".
Wenn ich den selben Befehl in meiner DOS - Box absetze funktionert das ganze wunderbar.

System Windows XP
Firewall ist aus.

Ich habe das ganze (XAMPP) auf einen neuen PC geschoben die alte . conf Datei genommen und seit dem funktioniert es nicht mehr.

Muss bei dem System - Befehl etwas besonders beachtet werden?

Das ganz soll einen PC im Netzwerk neu starten.
 
Hallo zusammen.

Ich habe das gleiche Problem das speedyggg beschreibt. Hat da evtl. schon jemand Erfahrung?
Wenn ich z.B. den Befehl "dir" über system ausführe, bekomme ich als Ausgabe den Inhalt von meinem Rootverzeichnis angezeigt.
Jedoch kommt bei den von mir benötigten Befehlen (netsh und sc) Zugriff verweigert. Ich habe dann probiert auf dem Server die Rechte für diese beiden Befehle so zu setzten dass ich als Besucher der PHP-Seite die Befehle ausführen kann, jedoch bleibt dann immer mein Browser hängen. Der Dienst (netsh oder sc) wird auf dem Server zwar gestartet, jedoch krieg ich einfach keine Ausgabe.

Wenn ich die Befehle in der cmd eingebe, funktionieren sie ohne Probleme...

Danke schon mal!
 
bin jetzt ein stück weiter.
Ich rufe jetzt meine Befehle über "call" auf.

call [Laufwerk:][Pfad] Dateiname [Parameter]​

Parameter bezeichnet hierbei bleibige Angaben in der Befehlszeile, die von dem aufgerufenen Batchprogramm benoetigt werden.

Einfach mal "call /?" in der cmd eingeben umd die Hilfe zu erhalten.
Jedenfalls werden meine Befehle (netsh und sc) jetzt richtig ausgeführt.
 
hi magnus 23


wie lautet deine Codezeile bespiel so etwa: system ('call shutdown -r -f -m \\hostname');

oder wie hast du das im PHP Script gelöst.

Wenn das funktioniert kann man dir nur gratulieren.

Thx
Speedyggg
 
Hi.

Bei mir kam die Meldung "Zugriff verweigert" auch, weil der User, auf den man auf den dem Webserver connected hat, keine Rechte hatte z.B. den "netsh.exe-Befehl" auszuführen. Also alle Befehle die in der command.com waren, haben funktioniert. Ich habe dann eben dem "Internet-User" das Recht gegeben die netsh.exe auszuführen. Und dann hats funktioniert. Als ich allerdings den "call-Befehl" weggelassen hab, hatte ich immer das Problem, dass zwar der Dienst auf dem Server gestartet wurde, aber einfach stehen blieb und somit mein Browser auch.

Hier mal der Code soweit ich den jetzt grad auswendig weiß. Komm leider erst am Mittwoch wieder zum Arbeiten. Poste das dann da nochmal.

$dhcp = system('call c:\windows\system32\netsh.exe dhcp show server')

Sorry mehr weiß ich grad nicht mehr.
Hoff das hilft weiter...
 
Ich selber benutze auch xampp und habe folgendes probiert :

system ('shutdown -r -f -m 192.168.11.100');

und es hat funktioniert.
 
@dimension

Welche Version von Xampp nutzt du den ?

Wie ich weiter oben schon geschrieben habe hatte das bei mir auch mal funktioniert.

Wenn du die neuste nutzt würde mich mal der Teil mit Safe_Mode in der php.ini interessieren.

Speedyggg
 
Zurück