Странности exec() и system()

ramboza

Guest
Странности exec() и system()

Господа, возникла следующая проблемка:

WinXP/Apache2052/PHP4310

Локально (http://127.0.0.1/script.php) выполняю скрипт:

exec("notepad.exe");
Результат следующий - открывается нормально блокнот, а вместе с ним почему-то еще и cmd.exe.
Но проблемка не в этом, когда пытаюсь выполнить скрипт:
exec("start c:\\GnuPG\\gpg.exe -e -ao c:\apache2\htdocs\crypted.txt -r Oleg c:\apache2\htdocs\plain.data");
Открывается на секунду cmd.exe, и тут же закрывается. Скрипт не срабатывает, - должен создаться файл. (Эта же строка из того же cmd работает прекрасно).
Меняя exec на system или passthru абсолютно ничего не меняет.
Пробовал связку:
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run("notepad.exe", 7, false);
Приводит к:
PHP Script Interpreter has encountered a problem and needs to close. We are sorry for the inconvenience.

Что бы вы могли посоветовать? Спасибо.
 

LeaetherStrip

Новичок
А права доступа к каталогам/файлам стоят?

(В XP их просмотр и изменение делается через cacls)
 

ramboza

Guest
Имхо тут дело не в правах, так как перед этим идет строка:
$plainTxt = "c:\apache2\htdocs\plain.data";
$fp = fopen($plainTxt, 'w');
fwrite($fp, $msg);
fclose($fp);

Файл создается, в него нужное записывается.

-~{}~ 13.05.05 20:57:

Хм, в error.log apache2 пишет следующее
[error] [client 127.0.0.1] gpg: Oleg: skipped: public key not found\r, referer: http://127.0.0.1:2301/gnupg/secret_form.html
[error] [client 127.0.0.1] gpg: c://apache2//htdocs//plain.data: encryption failed: public key not found\r, referer: http://127.0.0.1:2301/gnupg/secret_form.html

Хотя повторюсь из командной строки все работает.

-~{}~ 13.05.05 21:08:

Проблема решена, всем спасибо =)
 
Сверху