Russian Qt Forum

Qt => Работа с сетью => Тема начата: merke от Сентябрь 21, 2010, 17:23



Название: Передача файлов по сети
Отправлено: merke от Сентябрь 21, 2010, 17:23
Всем привет!

В общем стала задача передать файл от сервера к клиенту или наоборот. Меня интересует один вопрос, если под виндой отправлять например файл больше 1 мб одним пакетом то файл придет на принимающую сторону не полностью. Для этого придется слать файл паками и реализовывать протокол обмена. Под линуксом не писал ещё, но хочу спросить может под линуксом такой фокус пройдет, если слать файл полностью не паками то состоится ли удачная передача?

Пожалуйста, просьба, может у кого нибудь есть готовая реализация передачи файлов по сети?

Мне очень нужна ваша помощь!

Буду рад помощи!!!

С уважением, Александр!


Название: Re: Передача файлов по сети
Отправлено: ilyagoo от Сентябрь 21, 2010, 18:09
если вы имеета в виду пересылку через сокет, то в любом случае кусками.


Название: Re: Передача файлов по сети
Отправлено: kuzulis от Сентябрь 21, 2010, 18:13
Цитировать
Пожалуйста, просьба, может у кого нибудь есть готовая реализация передачи файлов по сети?

Попробуй посмотреть в сторону протоколов XModem, YModem, ZModem и т.п. Самый простой - XModem. Можно попробовать его поверх Ethernet натянуть...
Ну или сделать что-то наподобие XModema только без проверки CRC т.к в TCP/IP проверка не имеет смысла. Имхо.


Название: Re: Передача файлов по сети
Отправлено: sergek от Сентябрь 21, 2010, 18:42
Пожалуйста, просьба, может у кого нибудь есть готовая реализация передачи файлов по сети?
Если готовое решение - то вот http://www.freesoft.ru/?id=671951 (http://www.freesoft.ru/?id=671951), под винды и *nix, совместим с Qt.
Для передачи файлов заточен класс BoaBinObject.
Если лень читать доку, можно взять пример (есть для Qt - QtWinClient.pro, QtWinServer.pro), подкорректировать серверную функцию selRecord для заполнения объекта TestRecord::binObject и через минут 15 получить результат...