|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
12.01.2017, 21:20 | #11 |
Пользователь
Регистрация: 04.10.2016
Сообщений: 76
|
Подскажите, мне очень интересно. В интернете я такой инфы не нашел
|
12.01.2017, 22:15 | #12 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,707
|
Да, при необходимости сервер открывает доп. порт, а потом закрывает.
|
12.01.2017, 22:32 | #13 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
Не очень хороший подход. Лучше один порт, но разные URL как в HTTP. Каждый файл скачивается при помощи отдельного сокета(отдельного соединения).
А сервер просто разбирает в зачине какой URL соответственно, то и возвращает. Если файл, то файл если сообщения, то сообщения. А то что разбирать(парсить) поток надо, так его всяк надо разбирать.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . Последний раз редактировалось Pavia; 12.01.2017 в 22:38. |
12.01.2017, 23:55 | #14 |
Пользователь
Регистрация: 04.10.2016
Сообщений: 76
|
|
13.01.2017, 01:02 | #15 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,869
|
А что вас смущает? Чем компонент ServerSocket отличается от прочих компонентов, например, TButton?
|
13.01.2017, 02:29 | #16 |
Пользователь
Регистрация: 04.10.2016
Сообщений: 76
|
А если ServerSocket попытается открыт порт, а он не откроется. Он будет закрыт на уровне провайдера. И все же, можно как то организовать все это на 1 порту?
|
13.01.2017, 02:45 | #17 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,869
|
ServerSocket не "открывает порт", он его слушает. И если сей порт закрыт на уровне провайдера - то без шансов.
Нельзя. Но смотря что ты под этим имеешь в виду. |
13.01.2017, 03:17 | #18 |
Пользователь
Регистрация: 04.10.2016
Сообщений: 76
|
Надо организовать возможность передачи файла и параллельно с этим отправлять ему текстовые сообщения.
|
13.01.2017, 04:03 | #19 |
Пользователь
Регистрация: 04.10.2016
Сообщений: 76
|
Недавно я знал о программе дарккомет. Программа для удаленного администрирования. Для ее работы нужно открыть лишь 1 порт. Я пробовал прослушивать свой микрофон, смотреть рабочий стол, смотреть вебку, и скачивать файл (это основные функции дарккомет). И это я делал одновременно! Этой программе как то удается расфасовывать информацию... При том что она работает на 1 порту.
|
13.01.2017, 07:37 | #20 | |
Форумчанин
Регистрация: 27.04.2012
Сообщений: 219
|
Цитата:
На пальцах и по топорному: ServerSocet в паре с ClientSocet- создали туннель,трубу,шланг(соеденение).При чем у одного и того же клиента,может быть не 1 труба до сервера, а 3,10 или 100(нить подключения) . По шлангу от клиента передали: [MES: Привет!] -Это передает поток отвечающий за чат (1 нить) создается при отправке сообщения, далее слушает [UNLOAD:C:/12.TXT] -Это передает поток отвечающий загрузку (2 нить) создается при старте передачи,по окончании закрывается [WEB:127.0.0.1] -Это передает поток отвечающий за WEB (3 нить) висит постоянно Все это шлется серверу потоками условно одновременно, сервер выслушав понимает кто и чего хочет, отвечает клиенту на его запрос. Задача кода клиента будет слушать и если что-то услышал, начать разгребать что ему ответил сервер. Если сервер ответил с заголовком MES,значит это чат Если сервер ответил с заголовком UNLOAD,значит прилетел еще 1 битик файла Если сервер ответил с заголовком WEB,значит это потоковое видео. Если все это будет потоками, ничто не будет подвисать работу программы. А процессор сам разберется в какое время и что сунуть в ваш LAN провод. Заголовками MES,UNLOAD,WEB могут быть 3 ClientSocet созданные каждый в своем потоке и подключенные к 1 серверу P/S/ Если вы дилетант в области программирования, я советую вам спустится с небес на землю. Вы установили Delphi и задали вопрос на форуме и думаете что завтра напишете Skype. НЕТ не напишите. Вам нужно разобраться по отдельности. 1-Начините просто с чата. Пощупайте как это работает. 2-Постепенно разберитесь с потоками, и напишите чат под управлением потока 3-Сделайте отладку, найдите баги, исправляйте баги. И только потом уже на 2 этап,передача файла.
Пишу много и развернуто
Последний раз редактировалось Heneken87; 13.01.2017 в 08:07. |
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Организация обмена данными и наполнение магазина | jess23 | Microsoft Office Access | 2 | 26.03.2016 11:35 |
HEX помощь - протокол обмена данными с прибором | acid26sk | Помощь студентам | 18 | 17.11.2014 11:25 |
Open Source протоколы для обмена мгновенными сообщениями | Deadstock | Общие вопросы .NET | 4 | 12.02.2014 01:08 |
ускрпение обмена данными | sasha2121 | Компьютерное железо | 0 | 25.01.2011 14:58 |