ftp com TIPCLIENT do XHB
Moderador: Moderadores
ftp com TIPCLIENT do XHB
Como assim definir porta, José? Se vc estiver falando da linha oFTP:nDefaultPort := eFTPPORTA ou da linha #define eFTPPORTA 21, eu as desabilitei para testar, mas assim também não funcionou.
Marcos, verifiquei, está tudo em minúscula. Até testei mudando para maiúsculas, mas também não funciona.
Marcos, verifiquei, está tudo em minúscula. Até testei mudando para maiúsculas, mas também não funciona.
Inacio de Carvalho Neto
ftp com TIPCLIENT do XHB
Meus amigos,
Será que não existe um jeito de a TIPCLIENT voltar a funcionar?
Estou precisando muito dessa função.
Alguém me ajuda, por favor?
Será que não existe um jeito de a TIPCLIENT voltar a funcionar?
Estou precisando muito dessa função.
Alguém me ajuda, por favor?
Inacio de Carvalho Neto
ftp com TIPCLIENT do XHB
Se ja tentou com o xHarbour e não deu tenta com o HARBOUR pra testar, eu uso o Harbour e a tipclient direto todos os dias em diversos clientes e funciona bem.
[]'s
[]'s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
ftp com TIPCLIENT do XHB
Eu uso o Harbour, não o Xharbour.
Saberia me dizer por que comigo não funciona mais? Sempre funcionou, mas há alguns meses parou de funcionar, inexplicavelmente.
Saberia me dizer por que comigo não funciona mais? Sempre funcionou, mas há alguns meses parou de funcionar, inexplicavelmente.
Inacio de Carvalho Neto
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
ftp com TIPCLIENT do XHB
Olá Inácio (cjp),
Já tentou entrar em contato com o suporte do seu provedor para saber se houve alteração de porta? Pergunto porque desde 01/01/2013 os provedores no Brasil desativaram as portas consideradas vulneráveis.
Já tentou entrar em contato com o suporte do seu provedor para saber se houve alteração de porta? Pergunto porque desde 01/01/2013 os provedores no Brasil desativaram as portas consideradas vulneráveis.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
ftp com TIPCLIENT do XHB
CJP seus problemas acabaram.... Não é produto tabajara e sim um pequeno erro de lógica....
Eu peguei seu código e compilei e rodei linha a linha com o DEBUG (q uso muito e me ajuda muito) e percebi o erro de lógica que vou transcrever no teu código abaixo e comentar, lembrando q tive q fazer alguns ajustes pra poder funcionar, mas nada q afetasse a real necessidade.
Dá uma olhada aí e me fala se deu certo ou se eu viajei na maionese e seu problema continua...
Abraço
Sucesso!!
Eu peguei seu código e compilei e rodei linha a linha com o DEBUG (q uso muito e me ajuda muito) e percebi o erro de lógica que vou transcrever no teu código abaixo e comentar, lembrando q tive q fazer alguns ajustes pra poder funcionar, mas nada q afetasse a real necessidade.
Código: Selecionar todos
//--> Esta parte esta abaixo da function enviaftp, mas eu por questão de forma de trabalho coloquei acima, mas isso não é o problema ok...
#include "inkey.ch"
#include "fileio.ch"
#include "common.ch"
#include "Directry.ch"
#define eFTPSERVER1 'ftp.meuenderecoftp.com.br' // ENDEREÇO SERVIDOR FTP 01
#define eFTPPORTA 21 // PORTA DO FTP PARA BAIXAR ATUALIZAÇÕES DO SISTEMA
#define eFTPUSER 'myuser' // USUARIO DO FTP PARA BAIXAR ATUALIZAÇÕES DO SISTEMA
#define eFTPPASS 'mypassword' // SENHA DO FTP PARA BAIXAR ATUALIZAÇÕES DO SISTEMA
function enviaftp()
altd() //--> chamo o debug pra acompanhar
arqv := 'testeftp.exe' //->meu arquivo a ser enviado pro FTP pra testar
pasta := 'www\' //-> minha pasta a ser changed qdo logar no FTP
aDir0 := directory(arqv)
IF UPLOAD_ARQ( alltrim(pasta), alltrim(arqv) ) = .F.
@ maxrow(),1 say "Arquivo não enviado "
tone(261.7,23)
inkey(10)
return .f.
else
return .t.
ENDIF
RETURN NIL
STATIC FUNCTION UPLOAD_ARQ( FTPDIR, farq )
Local cUrl, oUrl, oFTP, cFTPSERVER:=''
LOCAL vzerr := 0, cLista:='' //--> criei aki como local pq a primeira vzerr dava erro q eu não tinha essa variavel talvez no teu código macro estivesse vindo como public ou private de alguma chamada anterior, porém aki pra efeito de testes defini como zero e local os valores iniciais, e a outra eu explico mais abaixo.
cFTPSERVER:=eFTPSERVER1
cUrl := "ftp://" + eFTPUSER + ":" + eFTPPASS + "@" + cFTPSERVER
oUrl := tUrl():New( cUrl )
oFTP := tIPClientFtp():New( oUrl, .F. )
oFTP:nConnTimeout := 20000
oFTP:bUsePasv := .T.
oFTP:nDefaultPort := eFTPPORTA //PORTA DO FTP
oFTP:oUrl:cUserID := eFTPUSER
oFTP:oUrl:cServer := cFTPSERVER
oFTP:oUrl:cPassword := eFTPPASS
IF oFTP:Open( cUrl )
clista:=oFTP:List() //--> isso aki eu uso pra ver o conteudo da onde estou no FTP é tipo um comando DIR, pq ai no debug eu vejo o conteudo desta variavel durante a execução do código acompanhando seu valor
//--> aki é o X da questão, observe q vc mandou ele trocar de diretório mas se não achar cria, PORÉM SE ACHAR ELE JÁ TROCOU ENTENDE...
IF !oFTP:Cwd(ftpdir) // se não achar o diretorio ele cria
cria="N"
if us="I"
@ maxrow(),1 say "Pasta "+ftpdir+" inexistente no FTP; criar a pasta?"get cria pict "@!"
tone(261.7,33)
read
endif
if cria="S"
oFTP:MKD(ftpdir) // cria o diretorio
else
return .f.
endif
ENDIF
// ESSE IF ABAIXO ESTA ANALISANDO SE MUDAR DE PASTA NÃO DER CERTO AI MANDA UM EMAIL E RETORNA FALSO, PORÉM A CONDIÇÃO ACIMA É VERDADEIRA ELE JÁ ENCONTRA A PASTA E MUDA AUTOMATICAMENTE A CONDIÇÃO ABAIXO SE NÃO TIVER OUTRA PASTA COM O MESMO NOME VAI RETORNAR FALSO, DANDO A IMPRESSÃO QUE NÃO ESTA FUNCIONANDO, PORÉM A LÓGICA É Q FAZENDO COM Q RETORNE FALSO POIS NÃO TEM OUTRA PASTA DE MESMO NOME.
/*
if oFTP:Cwd(ftpdir)=.f. // muda o diretorio
if vzerr=1 .or. int(vzerr/15)=vzerr/15
mandmail1("","Retornou .f. no cwd; COMUNS 431")
endif
vzerr++
return .f.
ENDIF
*/
if oFTP:reset()=.f. //--> ESSA CONDIÇÃO EU NÃO USO NO MEU CÓDIGO E NÃO SEI EXPLICAR PORÉM AO TESTAR NÃO INFLUENCIOU.
// mandmail1("","Retornou .f. no reset; COMUNS 438")
return .f.
endif
//--> O RESTANTE BLZ VAI Q VAI...
if oFtp:UploadFile( farq )=.f.
if usooff#"S"
@ maxrow(),1 say "Não é possível enviar o arquivo"
endif
return .f.
endif
oFTP:Close() // fecha a conexão do FTP
ENDIF
RETURN( .T.)
Abraço
Sucesso!!
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
ftp com TIPCLIENT do XHB
De fato, amigo, estava errada minha função. Agora funcionou. Muito obrigado.
Inacio de Carvalho Neto
ftp com TIPCLIENT do XHB
CJP, q bom q deu certo.
[]'s
[]'s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
ftp com TIPCLIENT do XHB
Colegas,
Mais uma vez esta função está dando erro.
A função que está dando erro é assim:
O erro está dando na abertura da pasta do FTP, nesta lista:
Não consigo entender por que ele não consegue abrir a pasta, sendo que a pasta existe no FTP.
O pior é que o erro acontece apenas de vez em quando, não é em todas as vezes.
Tem algum jeito de descobrir a razão disso?
Mais uma vez esta função está dando erro.
A função que está dando erro é assim:
Código: Selecionar todos
Function listaftp(pasta)
ftpproto ="ftp://" //posthilit">ftp://"
ftpserver = ftps // posthilit">ftp.servidor.com.br" endereço de ="posthilit">FTP</span> do site
ftpuser = "inaciobr" //Usuário da conta ="posthilit">FTP</span>
curl:=ftpproto+ftpuser+":"+snhftp+"@"+ftpserver
oUrl:= turl():new(curl)
oCred:= tIPCredentials()
oFtp:= tipclientftp():NEW(oUrl,,.T.)
oFTP:nConnTimeout := 20000
oFTP:bUsePasv := .T.
IF oFTP:Open()
if oFTP:Cwd(pasta)=.f.
return .f.
endif
clista:=oFTP:List()
if usebase("arqbx","S")=.t.
dele all
pack
clista=substr(clista,40)
do while .t.
if empty(clista) .or. at("www.ina",clista)=1
exit
endif
nrfinal=at(".",substr(clista,1,10))+3
if at(".",substr(clista,nrfinal,5))=0
append blank
repl nome with substr(clista,1,nrfinal)
else
nrfinal=nrfinal+4
endif
clista=substr(clista,nrfinal+42)
if len(clista)<5
exit
endif
enddo
else
return .f.
ENDIF
else
return .f.
endif
oFTP:Close()
Return .t.
Código: Selecionar todos
if oFTP:Cwd(pasta)=.f.
O pior é que o erro acontece apenas de vez em quando, não é em todas as vezes.
Tem algum jeito de descobrir a razão disso?
Inacio de Carvalho Neto
ftp com TIPCLIENT do XHB
Qual o erro q aparece?
Eu testei aki, direcionando pro meu ftp, usuário e senha e definindo uma pasta do mesmo na variável PASTA e não processando a função usabase q não é pertinente ao assunto no meu ponto de vista e acompanhando via DEBUG deu tudo certo...
Teríamos q analisar o erro pra podermos ter uma ideia melhor.
[]´s
Eu testei aki, direcionando pro meu ftp, usuário e senha e definindo uma pasta do mesmo na variável PASTA e não processando a função usabase q não é pertinente ao assunto no meu ponto de vista e acompanhando via DEBUG deu tudo certo...
Teríamos q analisar o erro pra podermos ter uma ideia melhor.
[]´s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
ftp com TIPCLIENT do XHB
Então, o problema é que eu não consigo saber qual o erro. Aliás, nem é propriamente um erro. Apenas a linha
retorna .f., sem qualquer explicação, pois a pasta existe no FTP.
E o pior é que isso não acontece sempre. Às vezes retorna .t., às vezes .f.
Tem como ao menos eu conseguir saber a razão disso?
Código: Selecionar todos
if oFTP:Cwd(pasta)=.f.E o pior é que isso não acontece sempre. Às vezes retorna .t., às vezes .f.
Tem como ao menos eu conseguir saber a razão disso?
Inacio de Carvalho Neto
ftp com TIPCLIENT do XHB
Não tenho idéia... dá impressão q seja algo com o Servidor onde vc hospeda, mas não dá pra saber...
Vc experimentou outra versão do xHB pra comparar a nível de testes?
[]´s
Vc experimentou outra versão do xHB pra comparar a nível de testes?
[]´s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
ftp com TIPCLIENT do XHB
Olá Inácio,
Já tentou usar um temporizador? Por exemplo:
Já tentou usar um temporizador? Por exemplo:
Código: Selecionar todos
nTentativas := 1
While oFTP:Cwd(pasta)=.f.
InKey( .5 ) // aguarda 1/2 segundo
nTentativas++
If nTentativas = 3 // após 3 tentativas p.e.
Hb_Alert( "Falha na conexão com o servidor.;Tente novamente depois." )
Return .f.
EndIf
EndDoAbraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
ftp com TIPCLIENT do XHB
Boa ideia Jairo... já q o problema é esporádico pelo q o colega afirmou, pode ser algo a nível de conexão FTP com o server q hospeda, então a ideia de fazer um laço com 1 temporizador é uma possibilidade.
[]´s
[]´s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
ftp com TIPCLIENT do XHB
Realmente é uma boa ideia, Jairo. Não tinha pensado nisto antes.
Implantei essa modificação agora. Vou testar e depois informo.
Obrigado por enquanto.
Implantei essa modificação agora. Vou testar e depois informo.
Obrigado por enquanto.
Inacio de Carvalho Neto

