Не запускается внешнея программа, проблемы с путями...

Astral Man

We Will Rock You
Не запускается внешнея программа, проблемы с путями...

Что-то не пойму...

программа находится здесь "C:\test\test.exe"
запускаю
PHP:
system('C:\test\test.exe', $out);
echo $out;
результат "1"
программа не запустилась...

пишу эту строку в BAT файл, запускаю...
выводит вот что:
c:\usr\apache\host\test\docs\>C:\test\test.exe

что мне делать?
 
string system ( string command [, int return_var])

и где написано, что должно вернуть то, что вернула запущенная программа?

з.ы. смотри более другие Program Execution functions
 
Tor
Если запусить system('cmd', $out) - программа запускается.
но почему не запускается мой батник?

уже все перепробовал, в чем может быть проблема?
 
> но почему не запускается мой батник?
При чём тут батник?
PHP:
$cmd = 'C:\test\test.exe'; // или чего там у тебя
var_dump($cmd);
system($cmd, $out); 
echo $out;
И приводишь вывод.
PS: поскольку никакой уверенности в том, что приведённый выше код соответствует действительности, лично у меня нет.
PPS: и вообще непонятно, чего ты в итоге хочешь.
 
SiMM
Объясняю подробно что именно мне нужно.

Нужно расшифровать файл.

В папке C:\MCI\magpro\
лежит программа которая расшивровывает файл.
В папке C:\MCI\in\
лежит файл form.bat в котором прописана команда
C:\MCI\magpro\mag.exe d C:\MCI\in\file.dvc

Нужно этот батник выполнить, т.е. выполнить эту команду.
 
когда же эти люди научатся читать документацию...
Return Values
Returns the last line of the command output on success, and FALSE on failure.
See Also
backtick operator

-~{}~ 27.07.05 15:51:

а при чём здесь проблемы с путями - мне кто-нибудь объяснит?
 
Фанат
specially for you :)
Execute an external program and display the output
(c) [m]system[/m]()
А $retVal это код возврата. Kоторый return 0; в C/C++, exit(0); в php и т.д.

Astral Man
Проверь есть ли такой файл там и может ли его запустить пользователь из под которого запущен php.
Код:
E:\install\soft\small\devel\dev-cpp>php
<?php
system('/no/such/file.exe', $retVal);
echo $retVal;
?>
^Z
The system cannot find the path specified.
1
E:\install\soft\small\devel\dev-cpp>
 
Фанат
С начала думал что проблема с путями...

backtick operator тоже не работает.

Пробовал выполнить обычную команду
'C:\ARC\arj.EXE a 111.arj 111.txt'

тоже не работает... может что-то в настройках?
 
Profic
Попробовал из командной строки, все заработало. Но почему запуская скрипт не рабает?
Выводит только 1, вывод ошибок стоит на маскимум...

-~{}~ 27.07.05 16:07:

Автор оригинала: Profic
Astral Man
[telepat]
display_error?
safe_mode?
[/telepat]
display_errors - On
safe_mode - Off
safe_mode_exec_dir - no value
safe_mode_gid - Off
safe_mode_include_dir - no value
 
PHP:
echo getenv('COMSPEC');
что говорит. Если все правильно - больше у меня идей нет.
Если
Попробовал из командной строки, все заработало. Но почему запуская скрипт не рабает?
означает именно то что я думаю, а именно: эта команда из консоли запускается, а из php нет.
 
Сверху