Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Горемычная функция exec();
Форумы портала PHP.SU » » Операционная система и системные вызовы » Горемычная функция exec();

Страниц (1): [1]
 

1. AdeL1ne - 30 Мая, 2011 - 10:18:31 - перейти к сообщению
Ох достала же она меня...
Ситуация: На компьютере установил Денвер, ну одна из последних версий вообщем. На ней у меня вполне себе нормально работает функция



открывает файл в WORD.

На этом же компьютере поставил все по отдельности apache2.2+php5.3.6+mysql и эта функция не хочет открывать файл... При этом сама по себе функция работает (проверял).

А происходит следующее: В процессах появляется WINWORD.EXE и cmd.exe запущеные от пользователя SYSTEM. Страничка, с которой идет выполнение функции повисает в браузере, процессы висят, ничего не открывается... Попробовал запустить apache под учеткой администратора, думал прав не хватает ему, но нифига - процессы теперь запускаются от админской учетки, но толку никакого, просто висят в системе и ничего не происходит. Порылся в настройках php.ini, даже бегло сравнил с настройками на Денвере, safe_mode у всех выключен, остальные настройки вроде схожи, хотя есс-но не уверен, так как нуб я в этом..

Подскажите в чем может быть проблема???
2. AdeL1ne - 31 Мая, 2011 - 09:19:11 - перейти к сообщению
товарищи, неужели никаких идей!?
3. morosit - 31 Мая, 2011 - 09:41:22 - перейти к сообщению
может в этом дело
Цитата:
Примечание: Если ваша программа начинается с выполнения этой функции и хотите оставить её работать в фоновом режиме, вы должны убедиться, что вывод этой программы будет направлен в файл или в какой-нибудь другой поток вывода, иначе PHP зависнет, пока выполнение программы не закончится.
4. AdeL1ne - 31 Мая, 2011 - 11:06:22 - перейти к сообщению
morosit пишет:
может в этом дело


А что это вообще? и как организовать в таком случае вывод в файл?
5. morosit - 31 Мая, 2011 - 15:17:01 - перейти к сообщению
я сам эту функцию никогда не использовал
а это просто описание функций
http://www.php.su/functions/?exec
6. sinsir - 31 Мая, 2011 - 15:25:31 - перейти к сообщению
У меня , по-видимому, та же проблема.
На одном компе она работает а на другом. нет.
Работает там где стоит Апаче 2 и ПХП 5, а там где неработает стоит Апаче 2.2 и ПХП 5.3.
Может дело в версиях.
Ломаю голову уже с месяц. Идей пока никаких.
7. sinsir - 05 Июня, 2011 - 13:34:05 - перейти к сообщению
AdeL1ne
не забыл включить в службах для апаче взаимодействие с рабочим столом? Подмигивание
Для меня , к сожалению, пришел к неутешительному выводу, что взаимодействовать с рабочим столом может только юзер вошедшый в виндовс локально (тобиш пойти к серваку и тупо зайти в винду на нем), и только после этого могут действовать остальные , интерактивные юзеры.
Говорят , что эта проблема пофиксена начиная с Виндовс сервер 2008. ( эх, к сожалению, для нее нада 40 Гб места Огорчение )
8. DeepVarvar - 05 Июня, 2011 - 13:46:09 - перейти к сообщению
sinsir пишет:
где неработает стоит Апаче 2.2 и ПХП 5.3.
И какого хрена юзать beta?
В 5.3 еще и совсем другой модуль работает с mysql (в винде) вот с ним проблемы.
sinsir пишет:
для нее нада 40 Гб места
Красота.. Переходи на линукс - 5-6 гигов на ВСЁ что только сможет понадобиться.
9. Мелкий - 05 Июня, 2011 - 14:05:51 - перейти к сообщению
DeepVarvar пишет:
И какого хрена юзать beta?

А кто из них беты? Оба релизы, и при чём давно вышли.
Для Apache тестовая ветка 2.3.

По основной версии - нахрена вообще нужно что-то рисовать на раб. стол? На большинстве серверов нет монитора, клавиатуры, а на некоторых - и вовсе видеоадаптера.
10. DeepVarvar - 05 Июня, 2011 - 14:20:11 - перейти к сообщению
Мелкий пишет:
нахрена вообще нужно что-то рисовать на раб. стол? На большинстве серверов нет монитора, клавиатуры, а на некоторых - и вовсе видеоадаптера
Так точно!!! Закатив глазки
11. molchun201 - 05 Июня, 2011 - 14:27:24 - перейти к сообщению
для открывания .doc'ов кури класс COM
12. sinsir - 05 Июня, 2011 - 14:59:01 - перейти к сообщению
Мелкий пишет:
По основной версии - нахрена вообще нужно что-то рисовать на раб. стол? На большинстве серверов нет монитора, клавиатуры, а на некоторых - и вовсе видеоадаптера.

Это точно.
Теперь представь , что у нас на сервере запущено несколько консолей разнообразных программ и серверов. напрашивается вопрос а как же ими управлять?
и соответственно ответ: через удаленный раб стол (самое простое). И вот тут я и споткнулся о сложности администрирования прав и привилегий на серверах линейки виндовс. Улыбка
(Добавление)
molchun201 пишет:
для открывания .doc'ов кури класс COM

Кстати на сайте мелкософта тоже рекомендуют запуск програм через СОМ . А что оно такое хз хз
13. Мелкий - 05 Июня, 2011 - 15:56:54 - перейти к сообщению
sinsir пишет:
Теперь представь , что у нас на сервере запущено несколько консолей разнообразных программ и серверов. напрашивается вопрос а как же ими управлять?

А теперь представляем:
вы что-то пытаетесь сделать на сервере через тот же rdp, но вам каждый момент времени вылезают всякие ворды.
Ну и не столь абстрактный вопрос - ну запустили ворд, он развернулся на экран. Дальше-то что? Через вин-апи тыкать псевдомышкой в кнопки? Ожидая, что сейчас откроется ещё ексель какой-нибудь и весь выверенный алгоритм тыканий через апи сдохнет, т.к. в фокусе будет другое окно?
Для автоматических действий используйте автоматические же средства. Тем более, они существуют.

И ещё раз про ту же цитату:
Я, как адепт linux и CLI, не представляю, какие могут быть проблемы управления "несколько консолей разнообразных программ и серверов" (хоть и не до конца понимаю, что вы имеете в виду под этой фразой). Каждому демону соответствуют свои команды управления. Что не уживается вместе - раскидывается по виртуалкам разной степени виртуальности.

 

Powered by ExBB FM 1.0 RC1