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

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

что мне делать?
 

Tor

Новичок
string system ( string command [, int return_var])

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

з.ы. смотри более другие Program Execution functions
 

Astral Man

We Will Rock You
Tor
Если запусить system('cmd', $out) - программа запускается.
но почему не запускается мой батник?

уже все перепробовал, в чем может быть проблема?
 

SiMM

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

Astral Man

We Will Rock You
SiMM
Объясняю подробно что именно мне нужно.

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

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

Нужно этот батник выполнить, т.е. выполнить эту команду.
 

Фанат

oncle terrible
Команда форума
когда же эти люди научатся читать документацию...
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:

а при чём здесь проблемы с путями - мне кто-нибудь объяснит?
 

Profic

just Profic (PHP5 BetaTeam)
Фанат
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>
 

Astral Man

We Will Rock You
Фанат
С начала думал что проблема с путями...

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

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

тоже не работает... может что-то в настройках?
 

Astral Man

We Will Rock You
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
 

Profic

just Profic (PHP5 BetaTeam)
PHP:
echo getenv('COMSPEC');
что говорит. Если все правильно - больше у меня идей нет.
Если
Попробовал из командной строки, все заработало. Но почему запуская скрипт не рабает?
означает именно то что я думаю, а именно: эта команда из консоли запускается, а из php нет.
 
Сверху