Показать сообщение отдельно
  #3  
Старый 13.01.2010, 12:05
Midmal Midmal вне форума
Прохожий
 
Регистрация: 22.08.2009
Сообщения: 41
Репутация: 10
По умолчанию

Уважаемый "Imikle", я попробовал то что вы мне посоветовали вот пример:
Код:
//Сегмент программного кода для отправки данных в потоке:
var
  MemoryStream: TMemoryStream;  //Переменная потока памяти
begin
  MemoryStream := TMemoryStream.Create;  //Создаём поток
  try
    MemoryStream.Position := 0;  //Число байт от начала и конца потока
    Image1.Picture.BitMap.SaveToStream(MemoryStream);  //Заносим данные в поток
    MemoryStream.Position := 0;  //Число байт от начала и конца потока
    Socket.SendStreamThenDrop(MemoryStream);  //Отправка данных
  except
    MemoryStream.Free;  //Очистка потока
  end;
end;

//Сегмент программного кода для принятия данных из потока:
const
  MAX_BUF_SIZE = $4095;  //Константа буффера
var
  Int: Integer;  //Переменная интервала
  MemoryStream: TMemoryStream;  //Переменная потока памяти
  Buffer: array [0..MAX_BUF_SIZE] of Char;  //Переменная буффера
begin
  Int := Socket.ReceiveLength;  //Устанавливаем длину потока в байтах
  MemoryStream := TMemoryStream.Create;  //Создаём поток
  try
    MemoryStream.Position := 0;  //Число байт от начала и конца потока
    Socket.ReceiveBuf(Buffer, Int);  //Принимаем данные в буффер
    MemoryStream.WriteBuffer(Buffer, Int);  //Записываем поток в буффер
    MemoryStream.Position := 0;  //Число байт от начала и конца потока
    Image1.Picture.BitMap.LoadFromStream(MemoryStream);  //Загружаем полученные данные
    Image1.Picture.Graphic := Image1.Picture.BitMap;  //Данная строка по всему видимо не чего видимого не делает...
  except
    MemoryStream.Free;  //Очистка потока
  end;
end;

Но, не к чему плохому или хорошему не привело. Проще говоря всё осталось без изменений...
P.S: Вообще по идеи изображение передаётся, но меньше чем на половину. Проще говоря, пол верхняя часть изображения заретуширована чёрным цветов, а нижняя отображается нормально. Я вообще не чего не понимаю, в чём ошибка или проблема.
Ответить с цитированием