Название: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: insamo от Октябрь 15, 2010, 12:07 Всем здрасти
Прошу гуру о помощи Пишу многофункциональное клиент-сервер приложение, не могу реализовать функцию передачи файлов. Интересуют такие вопросы 1. Как передавать большие файлы ( 2гб ). 2. Если блоками то по скока. Если у кого-нить есть наметки плиз поделитесь Заранее спасибо Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: merke от Октябрь 15, 2010, 12:14 Я фильм пересылаю 700 метров паками 1024*64 где то за 5 минут по локалке.
http://www.prog.org.ru/index.php?topic=13167.msg98798#msg98798 В этой теме человек предоставляет исходники клиент-серверного приложения для передачи файлов Удачи Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: insamo от Октябрь 15, 2010, 15:10 Блин весь форум перелопатил в упор не видел.
Спасибо, огромное! буду разбираться! :) Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: insamo от Октябрь 15, 2010, 16:05 У меня паходу руки кривые, Алекс плиз скинь свой готовый проект, пожалуста. А я потом скину что получилось.
Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: Waryable от Октябрь 15, 2010, 16:21 А почему не используете QDir? Полный функционал по маневрированию файлами и каталогами.
Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: insamo от Октябрь 15, 2010, 17:05 Опиши как, я просто не представляю как.
Я не хочу в ручную расшаривать папочки Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: eugene от Октябрь 15, 2010, 21:17 А зачем их вообще шарить? Я так понимаю, речь совсем о другом идет
Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: insamo от Октябрь 16, 2010, 10:04 Что ты предлагаешь, я тебя не пойму. QDir и клиент-сервер как это?
Я делаю клиент-сервер со множеством функций. Одна из функций будет, передача файлов. Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: merke от Октябрь 16, 2010, 10:44 Тот пример который я тебе показал, т.е. скинул ссылку, ты можешь взять его за основу. Самое главное что можешь взять от туда так это сам блок кода где непосредственно считывается файл кусками и шлется и взять кусок кода где принимающая сторона принимает эти паки и формирует файл.
Для начала тебе нужно придумать свой протокол обмена. Предлагаю следующий: Допустим клиент передает серверу файл: Клиент посылает серверу команду допустим: #CMDST#имя_файла_под_которым _сохранить#размер_файла Т.е. #CMDST# это сама команда означающая начало передачи файла, а уже имя_файла_под_которым _сохранить#размер_файла это параметры команды. Как только сервер получает данную команду он запоминает для текущего клиента название файла и размер файла. И шлет команду например: #CMDIR#, клиент получив её начинает паками слать файл, а сервер получать их, как только весь файл получен на стороне сервера, тот шлет команду #CMDET# т.е. получил файл. На этом передача файла заканчивается. Будут вопросы пиши! Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: Edynchik от Декабрь 16, 2010, 11:56 Создал консольный проект по исходнику выложенному выше, network в .pro добавил...вот только не пойму почему выходит :: error: collect2: ld returned 1 exit status
вот коноль сборки: Код: Выполняется сборка проекта filesender... вот и сам .pro: Код: #------------------------------------------------- Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: twp от Декабрь 16, 2010, 12:07 Цитировать undefined reference to `WinMain@16' Есть функция main?Название: Re: Передача фалов по сети больших файлов(клиент-сервер) Отправлено: Edynchik от Декабрь 16, 2010, 14:52 Цитировать undefined reference to `WinMain@16' Есть функция main? |