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

Вниз

Это действительно проблема!   Найти похожие ветки 

 
neodiX ©   (2002-06-04 12:28) [0]

Всем привет!
Приведен пример с компонентами Indy idTCPClient and idTCPServer. После того как сервер получает jpg выбрасывается ошибка "JPEG error #50".
- Соединение уже установлено
- Посылаем jpg

procedure TForm1.SendClick(Sender: TObject);
var ms:tmemorystream;
j:tjpegimage;
s:string;
begin
MS:= TMemoryStream.Create;
J := TJPEGImage.Create;
J.LoadFromFile("c:\1.jpg");
J.SaveToStream(MS);
MS.Position := 0;
SetString(S, nil, MS.Size);
MS.Read(Pointer(S)^, MS.Size);
idtcpclient1.Writeln("i" + S);
end;

- Принимаем jpg

procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var s:string;
mems:tmemorystream;
jpg:tjpegimage;
begin
s:= athread.Connection.ReadLn;
if s[1]="i" then
delete(s,1,1);
MemS := TMemoryStream.Create();
Jpg := TJPEGImage.Create();
try
MemS.Clear;
MemS.Position := 0;
MemS.WriteBuffer(Pointer(S)^, Length(S));
MemS.Position := 0;
Jpg.LoadFromStream(MemS); //!!! Zdes oshibka "JPEG error #50". !!!
//Image1.Picture.Graphic := Jpg; or
Image1.Picture.Assign(Jpg);
finally
MemS.Free();
Jpg.Free();
end;
end;

Посылал Стрим сразу тоже ошибка.
Вопрос:Почему происходит такая ошибка, ведь практически все правильно и как ее исправить?
Заранее спасибо за ответы.


 
neodiX ©   (2002-06-04 16:46) [1]

Если чо плохо пояснил - пишите.



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
1-60646
Link
2002-08-08 21:54
2002.08.19
Shell Link


3-60536
Hawk2
2002-07-30 15:20
2002.08.19
Пустые значения в полях типа DateTime.


14-60857
RV
2002-07-24 10:20
2002.08.19
Посоветуйте чтиво


6-60784
ATLANTIDO
2002-05-19 13:35
2002.08.19
Сетевые папки


6-60788
Delphi 5.01
2002-05-27 20:53
2002.08.19
Chitaem i zapisivaem s ftp servera