Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запуск ехе-шника через РНР скрипт, Запуск ехе-шника через РНР скрипт 
:(
    Опции темы
Chili
Дата 19.12.2006, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006

Репутация: нет
Всего: нет



Кто знает, подскажите, как можно с помощью РНР скрипта запустить ехе приложение и передать ему параметры!  smile 
PM MAIL   Вверх
Vaulter
Дата 19.12.2006, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 6
Всего: 22



Цитата



exec
(PHP 3, PHP 4, PHP 5)

exec -- Execute an external program
Описание
string exec ( string command [, array &output [, int &return_var]] )


exec() executes the given command. 

Список параметров


command
The command that will be executed. 

output
If the output argument is present, then the specified array will be filled with every line of output from the command. Trailing whitespace, such as \n, is not included in this array. Note that if the array already contains some elements, exec() will append to the end of the array. If you do not want the function to append elements, call unset() on the array before passing it to exec(). 

return_var
If the return_var argument is present along with the output argument, then the return status of the executed command will be written to this variable. 




 smile 


--------------------
PM MAIL WWW ICQ   Вверх
Chili
Дата 19.12.2006, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006

Репутация: нет
Всего: нет



Спасибо!
Приложение запускается процессом System, а не user`а. Как-бы его визуально увидеть?

PM MAIL   Вверх
szz
Дата 19.12.2006, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



и имей ввиду, что нужен абсолютный путь к экзешнику.
Код

$exe = './some_relative_path/program.exe';
exec(realpath($exe));

  Нигде про это не написано, это я опытным путем обнаружил. Не знаю, почему именно так, но это так smile


--------------------
PM   Вверх
Chili
Дата 19.12.2006, 17:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006

Репутация: нет
Всего: нет



Ау, люди! Всё написала как надоумили.
Может, я чего-то  не учитываю, но  вижу запущенный мною процесс только в диспетчере задач, а мне нужно, чтобы пользователь мог использовать это приложение! Как его реально увидеть в работе?
PM MAIL   Вверх
szz
Дата 19.12.2006, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



Хз. Я только консольные приложения запускаю, собираю их вывод и использую.
 А как гуишное запустить - даж не представляю.


--------------------
PM   Вверх
Vaulter
Дата 19.12.2006, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 6
Всего: 22



попробуй
Цитата



shell_exec
(PHP 4, PHP 5)

shell_exec -- Execute command via shell and return the complete output as a string
Описание
string shell_exec ( string cmd )


This function is identical to the backtick operator. 

Список параметров


cmd
The command that will be executed. 


Возвращаемые значения
The output from the executed command. 



 smile 


--------------------
PM MAIL WWW ICQ   Вверх
Chili
Дата 19.12.2006, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006

Репутация: нет
Всего: нет



 smile  smile  smile 
увы - та же чепуха...но спасибо за проявленное внимание
PM MAIL   Вверх
szz
Дата 19.12.2006, 19:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



а ты все равно пробуй!!!
Цитата

string system ( string command [, int &return_var] )


system() is just like the C version of the function in that it executes the given command and outputs the result. 

The system() call also tries to automatically flush the web server's output buffer after each line of output if PHP is running as a server module. 

If you need to execute a command and have all the data from the command passed directly back without any interference, use the passthru() function. 

Parameters


command
The command that will be executed. 

return_var
If the return_var argument is present, then the return status of the executed command will be written to this variable. 


Return Values
Returns the last line of the command output on success, and FALSE on failure. 



 smile  smile  smile  smile  smile  smile  smile 

Это сообщение отредактировал(а) szz - 19.12.2006, 19:09


--------------------
PM   Вверх
Chili
Дата 19.12.2006, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006

Репутация: нет
Всего: нет



 я сижу над этим уже часа три точно, пробовала все функции типа system(), exec(), shell_exec()  и т.д и т.п, получаю только результат в ДЗ,
если у кого получается сделать то, что мне нужно -  просто напишите, плз, что, мол, всё выходит, пробуй.
А если советы основаны лишь на теории, но практически не проверены -    то помилосердствуйте, я теории и так наелась сегодня - до немогу, ..............хоть и великолепно осознаю, что теории много никогда не бывает.

Видимо - сегодня не мой день.

Прошу не принимать мои слова за резкость  или, еще хуже, за проблески высокомерия - просто захекалась ..... smile 
PM MAIL   Вверх
Vaulter
Дата 19.12.2006, 19:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 6
Всего: 22



мдя. собственно что ожидать:
Apache запущен из под System, соответсвенно все execи будут изпод System.
вот и весь сказ.
а зачем это все?
возьмите другой инструмент (.bat, .cmd, python на крайний случай)


--------------------
PM MAIL WWW ICQ   Вверх
szz
Дата 19.12.2006, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



Да я щас написал быстро маленькую гуишную програму, и запустил из рнр.
Загрузка страницы зависает, php ждет когда завершится программа, иначе дальше функции exec не идет.
В общем логично, exec хочет получить завершающие значения вывода программы, а гуишная устроена так, что бежит в бесконечном цикле.

Программа бежит в TaskManagerе, но не видна.

  Я так полагаю что придется написать другую маленькую гуишную программу, которая запустит нужную и завершится. Щас попробую.


--------------------
PM   Вверх
Chili
Дата 19.12.2006, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006

Репутация: нет
Всего: нет



 ...Ну, хотелось как в сказке :
"... а счастье было так возможно,  ...и так возможно, .........и вот так........"; 

smile 
PM MAIL   Вверх
szz
Дата 19.12.2006, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



Сделал - php продолжает работу, но гуи, запущеный из этой маленькой программы - тоже не виден!


Vaulter, все объяснил - действительно, пользователь SYSTEM.
  Но тогда не поможет ни ком ни бат...  в люблм случае твоя гуишка не будет видна.


--------------------
PM   Вверх
Chili
Дата 19.12.2006, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.10.2006

Репутация: нет
Всего: нет



та да, ну, что ж, зайдём с другого края.

Всем огромное спасибо!Не перевелись ещё ... слава Богу!
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0603 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.