Hola muy buenas gente este es mi primer post en el foro espero que me puedan ayudar (: .tengo este codigo que sirve para que mi cliente socket en delphi reciba un archivo lo entiendo poco, pero igualmente funciona bien con archivos de texto. Se trata de una conexion con de socket normal que trae delphi , el servidor recibe bien archivos de texto (.txt) pero el problema lo tengo cuando quiero mandar un ejecutable, el servidor lo recibe pero vacio :s osea 0 kb la verdad no tengo la menor idea de cual puede ser el problema alguien me podria dar una mano? en cual es el error o el problema? se lo agradeceria mucho ya que estoy estancado en mi programa por este problema :s les dejo el codigo: procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
size: Integer;
strcom, com:string;
nreceived,i:integer;
Stream: TMemoryStream;
buffer: array [0..99999] of char;
begin
strcom:=Socket.ReceiveText;
if pos('TOMA',strcom)=1 then
begin
Stream := TMemoryStream.Create;
Screen.Cursor := crHourglass;
try
while True do
begin
nReceived := Socket.ReceiveBuf (Buffer, sizeof (Buffer));
if nReceived <= 0 then
Break
else
Stream.Write (Buffer, nReceived);
Sleep (200);
end;
Stream.Position := 0;
stream.SaveToFile('C:\Prueba.txt');
finally
Stream.Free;
Screen.Cursor := crDefault;
end;
end;
Bueno espero que alguien me pueda ayudar
gracias y saludos