Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Colaboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-01-2009
jomanmoz jomanmoz is offline
Miembro
 
Registrado: ago 2006
Posts: 21
Poder: 0
jomanmoz Va por buen camino
enviar imagen con sockets

Hola. comañeros del foro.

He trabajado con sockets pero solo envio y recibo texto, como si fuese un chat. ha hora quisisera saber la forma de enviar y recivir imagenes jpg o bitmap.
para ser mas claro en lo que necesito, desearia que el socketServidor enviara la imagen contenida en un Timage, y el socketCliente la recibiera para mostrarla en otro Timage.
Se que para esto se envia un Stream, el codigo que he encontrado para enviar el stream es el siguiente:

al dra clic a un boton se ejecutaria el siguiente codigo:

procedure TForm1.Button2Click(Sender: TObject);
var
mystream: TMemoryStream;
begin
mystream:= TMemorystream.Create;
Image1.Picture.Bitmap.SaveToStream(mystream);
Cliente.socket.SendStream(mystream);
end;

Ha hora necesitaria el codigo faltante para que el SocketCliente reciba el stream y mostrarlo en un Timage.

he encontrado codigos pero no me an funcionado, por ejemplo este recibe el Stream y crea un archivo Bmp, pero no me funciona.

procedure TForm1.ServerClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
nReceived:integer;
Buffer: array [0..99999] of byte;
Stream:TMemoryStream;
begin
//Esta es la parte que se encarga del stream
Stream := TMemoryStream.Create;
Screen.Cursor := crHourglass;
try
while True do
begin
nReceived := Socket.ReceiveBuf (Buffer, sizeof (Buffer));
if nReceived <= 0 then//<--Si ya no se reciben datos, es decir, al terminar la transferencia
Break
else
Stream.Write (Buffer, nReceived);//<--Vamos rellenando el stream
Sleep (200);
end;
Stream.Position := 0;
stream.SaveToFile('c:\imagen.bmp');
finally
end;
Stream.Free;
Screen.Cursor := crDefault;
exit;
end;

Mi idea no es almacenar el stream en archivo, sino solo mostrar el stream en un Timagen. Alguien podria ayudarme.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Enviar una imagen por red de forma Optimizada fide API de Windows 1 16-09-2007 20:36:38
Enviar cadena de caracteres de cliente a servidor (Sockets) david duarte Providers 5 20-08-2007 20:28:56
enviar sonidos por sockets dmagui Firebird e Interbase 2 25-08-2005 15:25:03
enviar imagen a excel Ester Servers 1 31-01-2005 16:56:52
Enviar imagen o archivo por socket DarkByte Internet 5 11-09-2003 15:16:16


La franja horaria es GMT +2. Ahora son las 03:42:39.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi