Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2010, 19:17   #1
D_E_N
Форумчанин
 
Регистрация: 04.05.2009
Сообщений: 149
По умолчанию Передача больших файлов чрез сокет

привет всем в сети накопал код
Код:
{Посылка файла через сокет}
procedure SendFileBySocket(filename: string);
          var srcfile: TFileStream;
begin
  {Открываем файл filename}
  srcfile := TFileStream.Create(filename, fmOpenRead);
  {Посылаем его первому подключенному клиенту}
  ServerSocket1.Socket.Connections[0].SendStream(srcfile);
  {Закрываем файл}
  srcfile.Free;
end;

{Прием файла через сокет}
procedure TForm1.ClientSocket1Read(Sender: TObject;
          Socket: TCustomWinSocket);
var
  l: Integer;
  buf: PChar;
  src: TFileStream;
begin
  {Записываем в l размер полученного блока}
  l := Socket.ReceiveLength;
  {Заказываем память для буфера}
  GetMem(buf,l+1);
  {Записываем в буфер полученный блок}
  Socket.ReceiveBuf(buf,l);
  {Открываем временный файл для записи}
  src := TFileStream.Create('myfile.tmp',fmOpenReadWrite);<-- на этой строке ошибка не пойму в чем проблема
  {Ставим позицию в конец файла}
  src.Seek(0,soFromEnd);
  {Записываем буфер в файл}
  src.WriteBuffer(buf,l);
  {Закрываем файл}
  src.Free;
  {Освобождаем память}
  FreeMem(buf);
end;
подскажите пожалуйста в чем проблема?
и можно ли передавать таким способ файлы больше 100мб?
и можно ли и как можно вывести на progressbar прогресс отправки
был на этом посте http://www.programmersforum.ru/showthread.php?t=5617
но ответа так и не нашел

Последний раз редактировалось D_E_N; 18.01.2010 в 19:31.
D_E_N вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача файла через сокет Delphi Unconnected Работа с сетью в Delphi 4 23.12.2008 16:16
Открытие больших текстовых файлов sht0p0r Помощь студентам 4 16.12.2008 12:42
Передача файлов Malder Общие вопросы .NET 2 03.11.2008 08:04
Передача файлов DM_bite Свободное общение 1 15.09.2008 16:22
Передача файлов wolff Работа с сетью в Delphi 3 03.03.2007 15:54