Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2006.08.06;
Скачать: [xml.tar.bz2];

Вниз

Бьюсь с отправлением файла по соксу   Найти похожие ветки 

 
Коля   (2006-03-26 11:39) [0]

Ну ведь правильно все написал - а выскакиевает AccessViolation. Помогите ошибку найти.


procedure TAppForm.pute(fil:string);
var
 PHH: TPacketHeaderHolder;
 PH: TPacketHeader;
 Stm:TStream;
 a:file of byte;
 buf:array[0..1024]of byte;
 frc:integer;
begin
 Stm := TMemoryStream.Create;
 
 assignfile(a,fil);
 reset(a);
 while not eof(a) do begin
    blockread(a,buf,1024,frc);
    stm.WriteBuffer(buf,1024);
  end;
  closefile(a);

 PHH := TPacketHeaderHolder.Create(ptReply);
   try
     Stm.Position := 0;
     PHH.DataSize := Stm.Size;
     PHH.DataHash := CalcMD5(Stm);
     PH := PHH.PacketHeader;
   finally
     FreeAndNil(PHH);
   end;

 Stm.Position := 0;
 with ClientSocket.Socket do
 begin
   SendBuf(PH, SizeOf(PH));
   SendStream(Stm);
 end;
   FreeAndNil(Stm);
end;


 
Коля   (2006-03-26 11:42) [1]

да, забыл сказать - выскакивает она на последней строчке.


 
Dmitrij_K   (2006-03-26 14:33) [2]

1. TMemoryStream.LoadFromFile()
2. Сокет блокирующий иль нет?


 
Dmitrij_K   (2006-03-26 14:39) [3]

Почитай справку по SendStream, особенно внизу Note:


 
Коля   (2006-03-26 18:39) [4]

Гениально! Спасибо большое!
убрал FreeAndNil(Stm); и все отлично заработало. А сам двое суток голову ломал


 
Dmitrij_K   (2006-03-26 19:23) [5]

У тебя остается проблема освобождения памяти от MemoryStream


 
Коля   (2006-03-26 22:47) [6]


try
   .....
   .....
   Socket.SendStream(Stm);
 except
   FreeAndNil(Stm);
   raise;
 end;


хм, а вот так, вроде, память освобождается



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

Форум: "Сети";
Текущий архив: 2006.08.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.011 c
2-1153077301
dj0n
2006-07-16 23:15
2006.08.06
Как открыть доступ на таблицу InterBase!


2-1152862577
NaLom
2006-07-14 11:36
2006.08.06
listview глюк


2-1152699903
zdm
2006-07-12 14:25
2006.08.06
string


2-1152892178
yon
2006-07-14 19:49
2006.08.06
Binary


15-1152614987
Александр Иванов
2006-07-11 14:49
2006.08.06
Без коментариев





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский