Показать сообщение отдельно
  #1  
Старый 27.12.2013, 13:32
alanatolich alanatolich вне форума
Прохожий
 
Регистрация: 24.12.2013
Сообщения: 18
Версия Delphi: Delphi XE
Репутация: 10
По умолчанию Передача файла с докачкой

Здравствуйте, подскажите как передать файл через сокет. с возможностью докачать в случае разрыва соединения.
Интересует скорее алгоритм, чем программная реализация.

Я вижу его так:
1 Настраиваем сокет адрес:порт;> 2
2 Делаем коннект;> 3
3 Коннект;
Успешный кокнет;> 4
4 открываем файл;>5
5 устанавливаем указатель позиции файла >6
6 считываем данные в буфер, сохраняем позицию указателя файла, отсылаем данные в сокет;>7
7 ждем ответа;>7
ответ (данные приняты); сохраняем значение указателя;>5
ответ (данные не приняты -"ошибка")отправляем еще раз;>5
ответ (файл принят) завершаем передачу;>8
8 Дисконект сокета.

Вопрос в следующем как разграничить данные в сокете? Такие как:
1. Команды ("отправленную порцию принял успешно, давай еще ";"верни размер файла который принимаешь" и т.п.)
2 .Данные (порции файла)

Надеюсь понятно
Ответить с цитированием