|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.10.2015, 16:50 | #1 |
Форумчанин
Регистрация: 22.12.2010
Сообщений: 175
|
сокеты и jpeg
Здравствуйте, хочу сделать что то типа радмина но для локальной сети (в кабинет информатики)
Клиент посылает серверу запрос (1 байт), сервер начинает отправлять снимок с экрана в формате jpg. Передаёт файл не ломая его, но почему то клиент странно его принимает, либо не тот кусок, либо странный размер. Отправляются по 10240 байта, но логи показывают что первый пакет принят но размер у него меньше (5000 байт допустим) или любой другой, и остальные пакеты принимаются и даже количество у них совпадает с отправленными. Бывает что примется пакета 3-4 либо последний пакет не принимается, он просто не приходит либо приходит в середине передачи (последний пакет помечается первым байтом со значением 4). Записываю все переданные байты сервера в файл и картинка нормальная, клиент же записывает картинку в файл и она искажена, разноцветная, короче что то ужасное с ней. Подскажите пожалуйста. Много всего закомменчено, прошу не ругаться Сервер: (находится на компьютерах учеников) Код:
Здравствуйте
|
14.10.2015, 16:50 | #2 |
Форумчанин
Регистрация: 22.12.2010
Сообщений: 175
|
Сервер передаёт пакеты по очереди, клиент бывает принимает их как попало
Клиент: (у учителя на пк) Код:
Заранее спасибо за помощь
Здравствуйте
|
14.10.2015, 17:00 | #3 |
Форумчанин
Регистрация: 22.12.2010
Сообщений: 175
|
Здравствуйте
|
14.10.2015, 17:54 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
В теме http://www.programmersforum.ru/showthread.php?t=282540 я давал примеры и ответы на некоторые душещипательные вопросы.
I'm learning to live...
|
14.10.2015, 18:11 | #5 | |
Форумчанин
Регистрация: 22.12.2010
Сообщений: 175
|
Цитата:
1. У вас компонент, у меня сокеты и {$APPTYPE CONSOLE} 2. У вас удп, у меня TCP
Здравствуйте
|
|
14.10.2015, 18:44 | #6 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Эхехех... Ладно. Не хочешь вникать - не надо. Пойдем от противного:
Цитата:
I'm learning to live...
|
|
14.10.2015, 18:51 | #7 | |
Форумчанин
Регистрация: 22.12.2010
Сообщений: 175
|
Цитата:
Да и у меня буффер всегда одного размера, и заполняется полностью, и данных больше чем размер буфера мне не приходило, соответственно пакеты раздельно лежат (наверн)
Здравствуйте
Последний раз редактировалось Stilet; 14.10.2015 в 18:55. |
|
14.10.2015, 19:00 | #8 | |||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
1) Крутить считку в цикле, пока не закроется подкчение. Способ так себе, и при беспрерывной передаче морочный 2) Первыми 4-мя байтами я передаю кол-во передаваемых байтов в пакете. после в цикле считываю принятое, и анализирую сколько пришло. Считываемое помещаю конечно же в TMemoryStream для убодства. Как только кол-во считанного сравнится с сигнатурой размера из первых 4-х байт (integer которые) - передаю байты в картинку. Цитата:
I'm learning to live...
|
|||
14.10.2015, 19:08 | #9 |
Форумчанин
Регистрация: 22.12.2010
Сообщений: 175
|
Попробую что нибудь сделать.
Интересно обходиться без готовых решений и компонентов. Да и вроде всё сетевое взаимодействие на них построено? не?
Здравствуйте
|
14.10.2015, 19:25 | #10 |
Форумчанин
Регистрация: 22.12.2010
Сообщений: 175
|
И всё таки, если у меня все 20 пакетов одного размера, как же они склеиваются?
и второе, если я сделаю как вы сказали (размер данных указывать в пакете), то например параллельно с этим у меня придёт запрос на пинг, всё крашнется же.. Клиент посчитает что это картинка пришла. Я всё еще не уверен что получится но спасибо за уделенное время
Здравствуйте
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Jpeg | warmbabe | Общие вопросы по Java, Java SE, Kotlin | 2 | 26.02.2010 20:14 |
Работа с JPEG | Artruman | Мультимедиа в Delphi | 2 | 04.05.2009 15:13 |
jpeg.dcu | Lemo | Общие вопросы Delphi | 14 | 31.12.2008 18:19 |
Jpeg | Артэс | Win Api | 1 | 29.11.2008 08:48 |
jpeg | All517 | БД в Delphi | 15 | 22.11.2007 14:31 |