Barra de Progresso com TipClientHttp()

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

Avatar do usuário
HASA
Colaborador
Colaborador
Mensagens: 1088
Registrado em: 01 Set 2003 19:50
Localização: São Paulo
Contato:

Barra de Progresso com TipClientHttp()

Mensagem por HASA »

Bom dia, Toledo!
:D
Perfeitamente, muito obrigado pela dica,
Forte abraço,
:{
Hasa
Avatar do usuário
HASA
Colaborador
Colaborador
Mensagens: 1088
Registrado em: 01 Set 2003 19:50
Localização: São Paulo
Contato:

Barra de Progresso com TipClientHttp()

Mensagem por HASA »

Toledo, tem alguma maneira de descobrir se o arquivo que estou tentando baixar está realmente no site?

Por exemplo: No site tem o arquivo Atu_A, mas eu mando o comando solicitando fazer o download do Atu_B

Tem como verificar que o arquivo não está presente?

Aguardo
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Barra de Progresso com TipClientHttp()

Mensagem por Toledo »

Hasa, eu não conheço todas as funções do TipClientHttp, mas acho que não tem como verificar se o arquivo existe.
Se você tiver acesso a uma conta de FTP deste site onde estão os arquivos que você quer copiar, ai sim dá para saber quais os arquivos/pastas que existem no site, utilizando neste caso a classe TipClientFtp.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
HASA
Colaborador
Colaborador
Mensagens: 1088
Registrado em: 01 Set 2003 19:50
Localização: São Paulo
Contato:

Barra de Progresso com TipClientHttp()

Mensagem por HASA »

Beleza, sem problemas, já foi de grande ajuda, eu tentei localizar documentação da Tip.Lib mas... nem de Habour nem de xHarbour não achei nada, mas... valeu mesmo. Caso algum colega que leia esse post tiver algum material agradecemos,
T+
:xau
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Barra de Progresso com TipClientHttp()

Mensagem por sygecom »

Hasa,
Não tenho material, mas faço assim:

Código: Selecionar todos

....
....
....
   TRY
     oConn := TipClientHttp():New(TURL():New(cURL))
     oConn:nConnTimeout := 10000
     oConn:exGauge := { | done, size| ShowGauge(done, size, nTAMANHO, ftpfile, oBar, oSAY ) }  // aqui baixa o arquivo

     IF oConn:Open(cURL)
        oConn:ReadToFile(fdestino,,nFileSize)
        oConn:Close()
     ENDIF
     lRet:=.T.
   CATCH
     lRet:=.F.
   END

   IF lRet
      IF FILE(fdestino) //se baixou e criou o arquivo
         cCONFERE:=MEMOREAD(fdestino) 
         IF AT('<html>',cCONFERE)>0 .AND. AT('</html>',cCONFERE)>0
            IF AT('Erro 403',cCONFERE)>0 .OR.;  // acesso negado
               AT('Erro 404',cCONFERE)>0 .OR.;  // pagina não encontrada
               AT('Erro 500',cCONFERE)>0 .OR.;  // Erro Interno de Servidor
               AT('Página Não Encontrada',cCONFERE)>0 // pagina não encontrada

               FERASE(fdestino) // EXCLUI POR BAIXOU COM ALGUM PROBLEMA
               lRet:=.F.
            ENDIF
         ENDIF
      ELSE
         lRet:=.F.
      ENDIF
   ENDIF
....
....
....
Nota: Ou seja, eu não sei se existe, mas quando baixo, eu abro ele para ver se deu algum problema de não baixar ou não existir... é Gambi
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
HASA
Colaborador
Colaborador
Mensagens: 1088
Registrado em: 01 Set 2003 19:50
Localização: São Paulo
Contato:

Barra de Progresso com TipClientHttp()

Mensagem por HASA »

:))
Obrigado, Leo, ainda não é o que preciso mas... vamos aguardar, é que eu jogo uma atualização no site cada ora tem um tamanho 1.00 1.20 1.25Mb etc... para que a barra não ultrapasse enquanto baixa teria que saber o tamanho exato do arquivo para que a barra acaba-se no final mesmo do arquivo, hoje vou por aprocimação não fica legal mas... engana.
:xau
Hasa
Responder