Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

progressbar de la descarga

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: progressbar de la descarga Responder citando

Necesito hacer una barra de progreso de una descarga desde un ftp . Leyendo por ahí he encontrado este código
Código:
void __fastcall TForm2::ftp2WorkBegin(TObject *ASender, TWorkMode AWorkMode,
     int AWorkCountMax)
{
if (AWorkCountMax > 0)   Progres->Max=AWorkCountMax;
else Progres->Max=dlsize;
}

He de decir que uso esto para descargar
Código:
try{
ftp2->Connect();
if(ftp2->Connected()){
   try{
      dlsize=ftp2->Size(nuevo); // tamaño para progres
      ftp2->Get(nuevo,flocal,true); // descargar archivo
      }
   catch(...){
      //ShowMessage("archivo no encontrado");
      }
   }
   ftp2->Quit();
}
catch(...){
      // no hay archivo
      }

Por la primera función solo pasa una vez, por lo cual la barra no se llena y como la ayuda del 2007 es tan mala no me puedo aclarar.

¿Alguna idea?

Saludos, Bosoft

Edito para informaros que ya esta solucionado. Cuando lo tenga perfilado lo pongo en Trips
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Prueba con esto

Código:

//---------------------------------------------------------------------------
void __fastcall TfrmMain::IdFTP1WorkBegin(TObject *ASender, TWorkMode AWorkMode,
     int AWorkCountMax)
{
 ProgressBar1->Max = AWorkCountMax;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMain::IdFTP1WorkEnd(TObject *ASender, TWorkMode AWorkMode)
{
  if(AWorkMode == wmWrite)
     ShowMessage("Archivo enviado");
}
//---------------------------------------------------------------------------
void __fastcall TfrmMain::IdFTP1Work(TObject *ASender, TWorkMode AWorkMode,
     int AWorkCount)
{
   ProgressBar1->Position = AWorkCount;
}
//---------------------------------------------------------------------------
Volver arriba
Ver perfil de usuario Enviar mensaje privado Dirección AIM
Mensaje    Asunto: Responder citando

Gracias frios, pero como ya dije al final del post ya estaba solucionado. De hecho, en trips tienes todo lo necesario, incluido el progress, para auto actualizar una aplicación, que era lo que trataba de hacer.

Lo dicho, muchas gracias por tu ayuda

Saludos, Bosoft.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.