Página 2 de 2

Problema com tipclientftp

Enviado: 15 Ago 2014 21:10
por Toledo
Inácio, informe qual é o conteúdo de arqvrec e pasta.

Abraços,

Problema com tipclientftp

Enviado: 15 Ago 2014 21:28
por cjp
A função está sendo chamada assim:

Código: Selecionar todos

pegaftp("arqbx.dbf",ptftp+"meusarq/tarefas")
E ptftp está inicializada assim:

Código: Selecionar todos

public ptftp :="/inaciobr/"

Problema com tipclientftp

Enviado: 16 Ago 2014 07:56
por Toledo
Inácio, faça um teste com este código:

Arquivo: DEMO.PRG

Código: Selecionar todos

Function Main()
  Local arqvpeg:="arqbx.dbf",pasta:="/inaciobr/meusarq/tarefas"
  Local ntentativa :=0
  Local ftps:="ftp.xxxx.com.br",;
        usftp:="xxxx",;
        snhftp:="xxxx"
  ftpproto ="ftp://"
  ftpserver = ftps
  ftpuser = usftp
  ftppass = snhftp
  curl:=ftpproto+ftpuser+":"+ftppass+"@"+ftpserver
  oCred:= tIPCredentials()
  oUrl:= turl():new(curl)
  oFtp:= tipclientftp():NEW(oUrl,,.T.)
  oFTP:nConnTimeout := 20000
  oFTP:bUsePasv     := .T.
  @ maxrow()-1,1 clear to maxrow()-1,maxcol()-1
  @ maxrow()-1,1 say "Abrindo conexão..."
  do while .t.
    If oFTP:Open()=.t.
      exit
    else
      @ maxrow()-1,1 clear to maxrow()-1,maxcol()-1
      @ maxrow()-1,1 say "Não abriu o FTP; tentando novamente ("+alltrim(str(nTentativa))+")"
      nTentativa++
      inkey(5)
      if nTentativa>10
        return .f.
      endif
    endif
  enddo
  @ maxrow()-1,1 clear to maxrow()-1,maxcol()-1
  @ maxrow()-1,1 say "Fazendo download do arquivo "+arqvpeg
  oFTP:Cwd(pasta)  
  if !oFtp:DownLoadFile(arqvpeg)  //informe o nome do arquivo que você quer baixar
    return .f.
  endif
  oFTP:Close()
  @ maxrow()-1,1 clear to maxrow()-1,maxcol()-1
  @ maxrow()-1,1 say "Arquivo "+arqvpeg+" baixado com sucesso"
  inkey(3)
Return .t.
No código acima informe corretamente as variáveis ftps:="ftp.xxxx.com.br", usftp:="xxxx" e snhftp:="xxxx" que são o endereço de FTP do seu site, Nome do usuário FTP e Senha de FTP. Tire os xxxx e informe o dados certos.

Para compilar, digite: hbmk2 demo.prg -lhbtip

Depois é só executar para ver se funciona.

Abraços,

Problema com tipclientftp

Enviado: 16 Ago 2014 09:19
por Jairo Maia
Olá Inácio,
cjp escreveu:Será que não existe um log ou alguma forma de debugar para saber onde está o problema?
Sim. Você pode usar o :cRepaly. Por exemplo, no exemplo do Toledo, em cada linha do comando FTP você pode ver se foi corretamente executado alterando para debugar. Exemplo essa linha:

Código: Selecionar todos

oFTP:Cwd(pasta)
Você pode alterar assim:

Código: Selecionar todos

? oFTP:Cwd(pasta), oFTP:cRepaly  // se deu tudo certo, retorna .T.