Автор
|
Тема: Socket, запуск программы на сервере
|
mariale |
опубликован 06-02-2001 17:16 MSK
Уважаемые программисты! Помогите, пожалуйста! Как реализовать следующее: 1. Программа-клиент пересылает данные (файлы, таблицы) на удаленный сервер с помощью Socket 2. На сервере запускается программа, обрабатывающая эти данные (эта программа уже есть) 3. Результат пересылается обратно клиенту Буду очень-очень благодарна за любую информацию и примеры кодов. Спасибо. Удачи всем в ваших проектах!
|
Lunya
|
опубликован 07-02-2001 01:30 MSK
А есть протокол интерфейса передачи? (Для организации такого процесса прежде всего нужен протокол, описывающий форматы отправляемых/принимаемых записей + типы данных). Или Вас интересует конкретно кодирование передачи через сокет? Уточните, pls. Regards, Lunya |
mariale
|
опубликован 07-02-2001 14:01 MSK
Данные - таблицы формата Paradox Пересылаются по TCP/IP Меня интересует, как в принципе, осуществляется пересылка файлов в Delphi. Или через сокеты можно передать только строчку? Спасибо :) |
Lunya
|
опубликован 07-02-2001 14:20 MSK
Для пересылки файлов (в Delphi в частности тоже) знатоками выдуман аж специальный протокол - FTP (File Transfer Protocol). Кстати в Delphi для работы с ним есть аж специальная компонента:) |
mariale
|
опубликован 07-02-2001 14:29 MSK
Про замечательный FTP мне известно, буду благодарна за примеры. А как запускать программу на сервере?
|
webmaster
|
опубликован 07-02-2001 14:51 MSK
Уважаемая Lunya, а может не стоит нагружать человека протоколом FTP ? Может лучше вкратце объяснить как работают сокеты ? :)
|
lamo
|
опубликован 07-02-2001 14:53 MSK
драсть девушки ... и коллеги по несчастью иметь такую работу =).могу предложить свою помошч. правда я туповат ... зато симпатишный =). что там у нас ? парадокс ? фтп ? =) я так понял ...что вам, mariale, нужно сделать чтото типа многозвенного аппликейшна =)? специально для этих целей люди придумали SQL сервера (MS SQL, Oracle, Informix and etc.) и по сети вы без проблем сможете до них достучаться где бы и на чем бы и под чем бы клиент не стоял =). если проблема с FireWall-ом, тогда могу предложить все реализовать через WEB-сервер. его порт не забанят =). тсалую =).
|
lamo
|
опубликован 07-02-2001 14:54 MSK
2 webmaster коллега =).
|
webmaster
|
опубликован 07-02-2001 15:00 MSK
2 lamo рад познакомиться :) |
Lunya
|
опубликован 07-02-2001 17:41 MSK
mariale: Для начала нужно, чтобы сервер, на который будете передавать файл поддерживал FTP (21-й порт). Кладете на форму компонент NMFTP, устанавливаете host сервера, куда нужно отправлять файлы, userID (логин) и password. затем вводите код типа:const DirName:='директория на сервере'; FileName='имя файла'; var try if ftp.Connected=False then ftp.Connect; except MessageBox(getActiveWindow,'Невозможно соединиться с сервером.','Ошибка',0); Exit; end; ftp.ChangeDir(DirName);{ сменить директорию} ftp.Upload(FileName,FileName);{ загрузить файл на сервер} ftp.Disconnect;//отсоединиться end; Программа на сервере должна в циклическом режиме отслеживать - не обновился ли файл и в случае обнаружения обновления обрабатывать его так, как требуется. p.s. А webmaster расскажет Вам, как сделать то же самое через сокеты:) |
Lunya
|
опубликован 07-02-2001 17:41 MSK
Извиняюсь за лишний var:) |
Lunya
|
опубликован 07-02-2001 17:42 MSK
Вместо него предполагался begin. |
mariale
|
опубликован 12-02-2001 14:18 MSK
Спасибо за информацию и пример! |
mariale
|
опубликован 27-02-2001 15:18 MSK
Молодой человек по фамилии Сухарев, к сожалению ваше сообщение создано автоматически mail-сервисом. Что это за готовое решение? Спасибо за интерес :) Пиши. Маша. |