Форум SAPE.RU

Форум SAPE.RU (http://forum.sape.ru/index.php)
-   Курилка (http://forum.sape.ru/forumdisplay.php?f=22)
-   -   Нужен совет по php (http://forum.sape.ru/showthread.php?t=63590)

justworker 28.12.2010 21:32

Нужен совет по php
 
Камрады, есть ли в природе какой-либо метод контроля работы приложений запущенных функцией exec? Интерисует подавление абсолютно всех всплывающих окон приложения(ошибки, вопросы, предупреждения). Немного пытался гуглить по работе через com объекты, возможно таким методом это можно контролировать?

Например, приложение вызывает системную ошибку об утечке памяти, сейчас это сообщение показывается при том, что приложение запускается php-скриптом в фоновом режиме, можно ли как-то подавить это сообщение средствами php?

Anadonam 28.12.2010 22:11

это win API если виндос - не скажу не работал c API на php даже не знаю может ли он это..

вот говорят следующее...
http://forums.webscript.ru/showthread.php?threadid=9841

Jooz 28.12.2010 22:13

Цитата:

Сообщение от justworker (Сообщение 985330)
приложение вызывает системную ошибку об утечке памяти

Цитата:

Сообщение от justworker (Сообщение 985330)
запущенных функцией exec

И при чем тут exec? Вам нужно приложение запускать с нужными ключами, что бы ни чего не выдавалось. Exec - всего ли "оболочка", толкает приложуху и ждет ответа. Вот и запустите exec-ом приложение с нужным ключиком.

Anadonam 28.12.2010 22:16

Jooz, ну если без php оно запускается без этой ошибки - то угу...

justworker 28.12.2010 23:54

Jooz, у приложения не предусмотрены ключи на отключение показа сообщений

Atomic 29.12.2010 08:48

Цитата:

Например, приложение вызывает системную ошибку об утечке памяти, сейчас это сообщение показывается при том, что приложение запускается php-скриптом в фоновом режиме, можно ли как-то подавить это сообщение средствами php?
http://php.su/functions/?exec
Цитата:

Если ваша программа начинается с выполнения этой функции и хотите оставить её работать в фоновом режиме, вы должны убедиться, что вывод этой программы будет направлен в файл или в какой-нибудь другой поток вывода, иначе PHP зависнет, пока выполнение программы не закончится.
попробуйте exec("команда","массив вывода");

Jooz 29.12.2010 08:59

Цитата:

Сообщение от justworker (Сообщение 985413)
Jooz, у приложения не предусмотрены ключи на отключение показа сообщений

Ну давайте тогда по порядку - вы под виндами как я понял?
Попробуйте свою приложуху зарегистрировать как сервис. Отключите взаимодействие с рабочим столом у этого сервиса. Запускайте из под другого юзера через батник или vbs скрипт, вариантов много, лучше скажите что вы такое загадочное запускаете, скорее всего есть альтернативы.

Добавлено через 2 минуты
Цитата:

Сообщение от Atomic (Сообщение 985509)
массив вывода"

У exec с этим офигенные проблемы, попробуйте с раром поиграйтесь будите удивлены тому, что он возвращает в массив.

Atomic 29.12.2010 09:18

Возможно. Вообще мне сложно уловить что требуется ТСу.
Есть еще варианты в команде прописать > файл/поток/NULL или тупо заглушить вывод ошибок/сообщений интерпретатора-@ при запуске через exec. Смотря что нужно ТСу и что за софт.

justworker 29.12.2010 10:24

IECapt, лепит скриншоты с ослика ие, периодически как я понял из-за очень длинных страниц(при 90% качестве выходной jpg получается от 0.5-1мб, разрешение такого файла в районе 1024х5000), происходит утечка памяти, далее выползает мерзопакостный еррор и работа приложения "встает"

есть исходники этой софтины, но нет совершенно никакого желания там копаться

Atomic
Цитата:

тупо заглушить вывод ошибок/сообщений интерпретатора-@ при запуске через exec
а можно по подробнее, очень горячо думаю для моего случая)

Jooz, да, под окошками, как крайний вариант попробую вашу схему

Добавлено через 54 минуты
Atomic, погуглил, к сожалению @ подавляет только ошибки php, а не самого приложения

Atomic 29.12.2010 11:44

justworker,
Цитата:

к сожалению @ подавляет только ошибки php
угу, потому и подчеркнул.
php никак не может повлиять на работу приложения, он запустил и ждет окончания выполнения.
собсно поэтому Джуз уже ответил - http://forum.sape.ru/showpost.php?p=985348&postcount=3 правильно


Часовой пояс GMT +3, время: 09:00.

Работает на vBulletin® версия 3.8.7.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
SAPE.RU — система купли-продажи ссылок с главных и внутренних страниц сайтов.