|
Вопрос # 1 886/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты!
Каким образом можно из Delphi запустить на удаленном http-сервере приложение?
 |
Вопрос задала: Ташка (статус: Посетитель)
Вопрос отправлен: 9 сентября 2008, 13:11
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Вадим К
Здравствуйте, Ташка!
Для начала надо узнать, какой строкой запроса его запускают. Если эту строку пишете в броузере, то это есть обычный GET запрос. Выполнить такой запрос просто - достаточно поставить на форму компонент idHTTP и написать в обработчике кнопки idhttp1.GET('http://mysyte.ua') или что то в этом стиле.
Возможно конечно, что запускается POST запросом. idhttp умеет и его выполнять.
Вместо Indy можно использовать и synapse - библиотека с реализицией многих функций для интернета, в том числе и http запросов.
По Indy и Synapse в разделе статьи на этом сайте есть несколько статей, можно почитать, разобраться.
Можно конечно и на чистых сокетах написать, всё дело вкуса и религиозных предпочтений.
Но неплохо было бы написать, что именно вы запускаете, а то получается сферический конь в вакууме:)
 |
Ответ отправил: Вадим К (статус: Академик)
Время отправки: 9 сентября 2008, 13:32
|
Мини-форум вопроса
Всего сообщений: 10; последнее сообщение — 9 сентября 2008, 16:40; участников в обсуждении: 3.
|
Ташка (статус: Посетитель), 9 сентября 2008, 13:40 [#1]:
похоже в самом деле очень непонятно написала.
Суть в чем - есть программа-клиент и программа/сервер, но вся загвоздка в том, что сервер невозмжно постоянно включенным держать, и необходимо из клиента как-то удаленно этот самый сервер запускать, а уже потом пошел бы весь обмен информации.
Если важно, то клиент/сервер действует через TidTCPClient и TidTCPServer
|
|
Вадим К (статус: Академик), 9 сентября 2008, 14:00 [#2]:
мда, закрутили вопрос. Вот так и надо формулировать.
Для того, что бы это сделать, прийдется брать ещё один idTCPServer или что то в этом виде и он будует ждать подключения. По подключению - запускать приложение. Но Вы пишете, что нет возможности постоянно держать сервер включенным.
Но можно решить обходним манёвром, если использовать фаервол. Многие с них имеют такую функцию - в случае прихода пакета на закрытый порт, запускать приложение.
Хотя сервер на то он и сервер, что бы быть постоянно запущенным и готовым к работе.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Ташка (статус: Посетитель), 9 сентября 2008, 14:02 [#3]:
понятно.......значит будем думать как решать проблему с постоянно запущенным сервером
спасибо за помощь
|
|
Вадим К (статус: Академик), 9 сентября 2008, 14:07 [#4]:
А почему он не может быть запущенным постоянно? Что мешает?
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Ташка (статус: Посетитель), 9 сентября 2008, 14:08 [#5]:
фирма для которой делается проект против этого и разубедить их никак не получается
|
|
Вадим К (статус: Академик), 9 сентября 2008, 14:17 [#6]:
Во первых, надо обяснить, что если сервер не запущен - нет работы.
А во вторых, сервер можно сделать службой...
Программа сервер случайно не с формочкой и не запущена ли на компьютере бухгалтера?
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Ташка (статус: Посетитель), 9 сентября 2008, 14:20 [#7]:
точна не на компьютере бухгалтера и в принципе без формы )
|
|
Вадим К (статус: Академик), 9 сентября 2008, 14:23 [#8]:
Ну тогда пусть там себе крутиться. Чем мешает.
Сложно понять заказчика порой, сервер запущен не должен быть, а вот работу выполнять должен.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Ташка (статус: Посетитель), 9 сентября 2008, 14:25 [#9]:
это точна! так что буду настаивать на своем
|
|
Amidamaru (статус: 4-ый класс), 9 сентября 2008, 16:40 [#10]:
"на удалённом http-сервере", т.е. у них есть постоянно работающий http-сервер? Можно написать в делфи cgi-приложение которое будет запускать нужную программу. Поищите тут были вопросы по поводу "как написать CGI-приложение на Delphi".
Я не уверен, но помоему простой запуск приложения возможен и через пхп (если на сервере установлены соответствующие разрешения)
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|