Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.12.23;
Скачать: CL | DM;

Вниз

Отправка файлов через сокеты   Найти похожие ветки 

 
Ivolg ©   (2007-11-26 17:41) [0]

Как можно отправить файл через стандартные сокеты Windows ?
Собственно делаю так:

Сервер:
uses
   WinSock;
....
var
    MS: TMemoryStream;
begin
   MS:=TMemoryStream.Create;
   MS.LoadFromFile("C:\1.jpg"); (Вес 300кб)
   MS.Position:=0;
   Send(server_sock, MS.Memory^, MS.Size, 0);
   MS.Free;
end;

Клиент:
var
    buf: string;
    MS: TMemoryStream;
begin
   MS:=TMemoryStream.Create;
   Recv(client_sock, buf, 307200, 0);
   MS.Write(buf, 307200);
   MS.SaveToFile("C:\2.jpg");
   MS.Free;
end;

После пересылки доходит только часть файла. Может есть другие варианты пересылки ?


 
tesseract ©   (2007-11-26 18:01) [1]


> Может есть другие варианты пересылки ?


Например блоками по 1 кбайту.


 
Ivolg ©   (2007-11-26 18:50) [2]

tesseract ©   (26.11.07 18:01) [1]

Над этой идеей я уже думал. Мне кажется, что это долговато будет, если файл большого объема, например 20мб.


 
Сергей М. ©   (2007-11-27 08:18) [3]


> делаю так


Это что, весь код ?
Где создание и инициализация гнезд ?


> Recv(client_sock, buf, 307200, 0);


Здесь грубейшая ошибка.


 
Ivolg ©   (2007-11-28 08:16) [4]

Сергей М. ©   (27.11.07 08:18) [3]

Все есть, я просто привел пример, как я отправляю и получаю данные.


 
Сергей М. ©   (2007-11-28 08:29) [5]


> Ivolg ©   (28.11.07 08:16) [4]


> Все есть


Если режим неблокирующий, то логика приема/передачи, реализованная тобой, неверна.



Страницы: 1 вся ветка

Текущий архив: 2007.12.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.015 c
15-1196087452
DVM
2007-11-26 17:30
2007.12.23
Глюк с дизайнером меню в Delphi 2007. Это только у меня? Или нет?


15-1195763722
dFedor
2007-11-22 23:35
2007.12.23
Поделитесь материалами


15-1195764332
Mul
2007-11-22 23:45
2007.12.23
А есть какие-нибудь статьи у Анатолия Подгоретского?


9-1164018658
Ярослав Ерёменко
2006-11-20 13:30
2007.12.23
Алгоритм отрисовки тайлов методом альфа-блендинга


3-1187260709
Tonich
2007-08-16 14:38
2007.12.23
order by