Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Передача файлов [D6, WinXP]


delpher_gray ©   (2002-09-06 11:14:00) 

Привет Делферы !
На этом сайте в FAQ есть статья: Простой способ передачи файлов через сокеты. В этой статье сначала серверу посылается команда "send", ну а потом сервер посылает клиенту файл в таком формате: сначала идёт размер файла, перевод строки, а затем код самого файла... Как я могу передать файл чтоб перед размером была команда допустем "get",а потом всё остальное... Это я сделал, но как я могу принять файл клиентом ? Я пишу что если первые 3 символа = "get",то начинаем принимать файл, но это почему-то не работает... Если кто писал проги с передачей файлов, где ктоме файла нужно передать ещё куду инфы с другими командами перед инфой, плииизззз подскажите !
Файлы надо передать именно через сокеты, через которые кроме файла проходит куча инфы :-)
Заранее благодарен, Овсянников Сергей.


VID   (2002-09-06 22:42:00) [1]

Я тоже читал ту статью... Её суть была показать технологию передачи файлов через сокеты. а раелизация оповещения клиента о начале передачи, конечно примитивна.
Лучше наверное так:
Сначала сервер посылает команду клиенту :
"#READY FILE TRANSFERT"
И клиент получив такую команду переходит в режим, когда все потутпающие данные будут сохраняться в поток.
После окончания передачи, сервер шлёт команду "#FILE TRANSFERT COMPLETED" и клиент переходит в обычное состояние...
но если паралеьно с передачей файла также должа иметься возможность передачи простого текста (как в icq, например), то
предложенный вариант не прокатит. Лучше, тогда в каждом присылаемом пакете в одном из полей, ставить спец. метку : файл, сообщение ,или ещё что...
и клиент в соответствии со значением этого поля, будет выполнять необзодимые действия с полученными данными...
и вообще файлы можно передавать без потоков, просто читая файл...

Вобщем, есть над чем подумать...


Наверх

Титульная страница Поиск, карта сайта Написать письмо