![]() |
|
Модераторы: Snowy, Poseidon, MetalFan |
![]()
|
|
| Tokagero |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 25.10.2006 Репутация: нет Всего: нет |
Итак, идея в том чтоб сделать прогу, которая с определенного сервера локальной сети передавала картинки на несколько других компов в сети, причем без открывания локального доступа и т.д. Сделать программу которая ложит картинку в опред. открытый каталог а другой комп копировал - элементарно. Надо чтоб этого небыло. Чтоб компы каким-то образом коннектились и серв передавал, компы получали. Помогите
|
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 0 Всего: 8 |
На компах получателях поднимаеш серверные сокеры (думаю UDP лучший вариант)
На компе передатчике поднимаеш клиентский сокет и транслируеш с него инфу (какую угодно) в виде широковещательных послок. Самый простой вариант воспользоваться indy9. меньше заморочек и разобраться не сложно. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| Tokagero |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 25.10.2006 Репутация: нет Всего: нет |
А можно мне написать пример. Я в этом
|
|||
|
||||
| Tokagero |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 25.10.2006 Репутация: нет Всего: нет |
Ага. Значит, я немного разобрался с УДП. Я непонял несколько вещей:
1) Порт. Что это за штука, как его определить и т.д. 2) Как оформить передачу файлов сразу на несколько компьютеров, а не на 1.
Это я нашел. Не помню, где. Прошу обяснить как ТУТ это переоборудовать. И кКак оформить передачу файлов сразу на несколько компьютеров, а не на 1. |
|||
|
||||
| drkot |
|
||||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 0 Всего: 8 |
Если сравнить комп с многоэтажным домом, то порт это дверь (или окно) через которое проходит информация адрессованная конкретному потоку. Порт нужно не определять, а задавать. Межеш выбрать практически любое число от 10000 до 65000.
смотри метод boardcast (отсылает широковещательные пакеты на все компьютеры подсети). Перво наперво разделить серверную и клиенсткую часть.
и по аналогии для передачи тела файла. PS: порт можно оставить тотже -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
||||
|
|||||
| Tokagero |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 25.10.2006 Репутация: нет Всего: нет |
||||
|
||||
| Tokagero |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 25.10.2006 Репутация: нет Всего: нет |
Единственное что теперь надо это способ передачи тела самого файла.
Можно это как-то в двух строчках продемонстрировать?? И вы говорили, send заменить на broadcast... А что на что тогда менять у "получателя"?? Это сообщение отредактировал(а) Tokagero - 27.10.2006, 14:15 |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 0 Всего: 8 |
У получателя все останется как было.
есть два типа функции send в одном указавается адресс получателя, а в другой нет. тебе нужна функия без адреса получателя (boardcast) + одноименное свойство компонента boardcast:=true. И думаю болеше ничего менять не надо. Освобожусь и подправлю твой исходник. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| Tokagero |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 25.10.2006 Репутация: нет Всего: нет |
Спасибо... Буду очень признателен.
|
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 0 Всего: 8 |
Вот накрапал.
Реализована односторонняя передача файлов. PS: С тебя ящик пива. Присоединённый файл ( Кол-во скачиваний: 153 )
FileTransfer.zip 10,82 Kb-------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| Tokagero |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 25.10.2006 Репутация: нет Всего: нет |
По мойму эта программа для получателя... а НЕ для отправителя. Мне то и надобыло чтоб была прога серва, отправляющего опред. файл, например, с:\pic.jpg. Просто мне в 12.30 (украина,донецк) седня надо буде это показать... Можно реализовать??
Зы сервер отправляет, компы получают. Это сообщение отредактировал(а) Tokagero - 28.10.2006, 09:12 |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 0 Всего: 8 |
там две программы одна передает (та что с кнопкой), а вторая принимает (та что с memo).
если ты их обе откомпилировал и запустил то при нажатии на кнопку появится запрос на выбор файла. файл рассылается в пределах подсети. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: 0 Всего: 8 |
а сермер не комп типа? соединение всегда инициирует клиент, сервер может только отвечает. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| Rodman |
|
|||
|
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: нет Всего: 122 |
drkot, а вот можно ли как нить эту картинку получить и прямо из потока вывести в Image... и так каждую секунду???
|
|||
|
||||
| Tokagero |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 25.10.2006 Репутация: нет Всего: нет |
drkot, в том примере что ты дал сервер получает файлы... А клиент отправляет... А можно наоборот... Я могу выложить то что я навоял и сможешь подправить??
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Сети" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Сети | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |