Próbowałem użyć exec()
z 'whoami'
, by sprawdzić, czy to działa i mam wynikphp exec() nie wykonuje polecenia
nt authority\system
Teraz trzeba uruchomić plik .exe
z parametrami od php
przez funkcję exec()
.
Próbowałem tego w wierszu poleceń i faktycznie uruchamia program z podanymi parametrami. To jest przykładowe polecenie.
UWAGA plik exe dostaje 3 wejścia (folder, nazwa_pliku, report_file_nmae)
> ..\..\some_file.exe folder="C:\path_to_folder" param=1.xml report=2.xml
Ale kiedy uruchomić tę komendę z php
pliku:
exec('..\..\some_file.exe folder="C:\path_to_folder" param=1.xml report=2.xml');
nic się nie dzieje. Po raz pierwszy używam funkcji exec(), więc nie znam jej szczegółów. Co jest nie tak?
Próbowałem za pomocą:
\\
zamiast\
escapeshellarg()
w katalogu- dodanej
""
całego katalogu nazw folderów
Nie traf
Uzupełnienie:
echo exec($command) // echos < .... why?
lub
exec($command, $output);
print_r($output); // Array()
nawet zmienił zgodę na plik do pełnej kontroli dla wszystkich użytkowników. Jeśli zadzwonię do programu z command prompt
, widzę ikonę pojawiającą się obok zegara przez sekundę.
Jednak to samo połączenie z php
nie wywoła nawet programu.
Edit
Nawet exec('notepad.exe');
nie działa. Coś musi być zrobione z konfiguracjami php
?
Upewnij się, że PHP ma uprawnienia do wywoływania tego pliku. – Joren
jak mogę się upewnić ... – Brian
Szczerze mówiąc nie wiem, jak to zrobić w systemie Windows, ponieważ jego system uprawnień jest niespójny. – Joren