Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 28-12-2007
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 30
jachguate Va por buen camino
con respecto de tu duda original, he cambiado la indentación para que resulte evidente el inicio fín de los bloques

Código Delphi [-]
if copy(date,1,5)='Upload' then
begin
  memo1.Lines.Add(date);
  SizeOfFile:=StrToInt(copy(date,7,pos('|',date)-7));
  //  memo1.Lines.Add(date);
  delete(date,1,pos('|',date));
  // memo1.Lines.Add(date);
  // memo1.Lines.Add(intTostr(SizeOfFile));
  UploadTo:=copy(date,1,Pos('|',date)-1);
  memo1.Lines.Add(uploadto);
  delete(date,1,pos('|',date));
  ServerState:=sSRecieveingFile;
  UFS:=TFileStream.Create(UploadTo,fmCreate or fmOpenWrite);
end;
case ServerState of
  sSRecieveingFile :
    begin
      try
        begin
          ufs.Write(date[1],length(date));
          Dec(SizeOfFile,length(date));
          if SizeOfFile = 0 then
          begin
            ServerState:=sSIdle;
            socket.SendText('Resultado'+'Fichero Subido..');
            UFs.free;
            sleep(1500);
            Socket.SendText('TomaFicheros'+ListFiles(ExtractFileDir(UploadTo)));
          end;
        end;
      except
        begin
          ufs.Free;
          Socket.SendText('Resultado'+'Fallo al Subir Fichero');
       end;
      end;
   end;
end;

Cómo podes ver, el case está fuera del begin/end que delimitan lo que se hará al cumplirse la condición del if.

He quitado algunos pares de begin/end que estaban de mas, y dejado el case dentro del bloque que se ejecuta al cumplirse la condición del if, que es lo que supongo que querés.

Código Delphi [-]
if copy(date,1,5)='Upload' then
begin
  memo1.Lines.Add(date);
  SizeOfFile:=StrToInt(copy(date,7,pos('|',date)-7));
  delete(date,1,pos('|',date));
  UploadTo:=copy(date,1,Pos('|',date)-1);
  memo1.Lines.Add(uploadto);
  delete(date,1,pos('|',date));
  ServerState:=sSRecieveingFile;
  UFS:=TFileStream.Create(UploadTo,fmCreate or fmOpenWrite);
  case ServerState of
    sSRecieveingFile :
      try
        ufs.Write(date[1],length(date));
        Dec(SizeOfFile,length(date));
        if SizeOfFile = 0 then
        begin
          ServerState:=sSIdle;
          socket.SendText('Resultado'+'Fichero Subido..');
          UFs.free;
          sleep(1500);
          Socket.SendText('TomaFicheros'+ListFiles(ExtractFileDir(UploadTo)));
        end;
      except
        ufs.Free;
        Socket.SendText('Resultado'+'Fallo al Subir Fichero');
      end;
  end;
end;

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
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
Problema con la funcion Seek de un TADOTable DanForever Conexión con bases de datos 2 04-05-2006 13:29:00
Problema para descargar archivos con la funcion GetInetFile Moises22 Internet 1 05-12-2005 14:15:35
Problema con la funcion mail JulioGO PHP 2 26-09-2005 11:24:15
problema para devolver 2 valores en una funcion tiagor64 OOP 4 06-05-2005 15:38:59
problema al llamar una función sgarrido Varios 3 27-07-2004 01:14:33


La franja horaria es GMT +2. Ahora son las 17:34:35.


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