:-O
Bom dia, amigos estou tentando fazer teste com envio de um pequeno arquivo texto mas aparentemente a tip.lib do Xharbour 1.2.3 ( Rev. 9733 ) está com algum bug ( ou eu sei lá ) vejam:
comando[:]
oClient:CWD( cfolder )
oClient:reset()
Log[:]
20121105-11:15:04 :INETSENDALL( F0AB68, 35, CWD /www.meusite.com/temp )
>> 35 <<
Log[:] até aqui belezinha diz que está na pasta que presiso
20121105-11:15:04 :INETRECVLINE( F0AB68, , 128 )
>> 250 OK. Current directory is /www.meusite.com/temp <<
20121105-11:15:04 :INETERRORCODE( F0AB68 )
>> 0 <<
:%
Log[:] AQUI APARECE ESSE "CWD /" SOZINHO TIRANDO DA PASTA ACIMA ?
20121105-11:15:04 :INETSENDALL( F0AB68, 7, CWD / )
>> 7 <<
20121105-11:15:04 :INETRECVLINE( F0AB68, , 128 )
>> 250 OK. Current directory is / <<
Esquecendo algum comando ?
Hasa
FTP UPLOAD
Moderador: Moderadores
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
FTP UPLOAD
Hasa, tente tirar o comando oClient:reset() e faça um teste.
Abraços,
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
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
FTP UPLOAD
Bom dia, Toledo na verdade não tinha esse comando coloquei por último na esperança de funcionar mas... creio que achei o problema na lib tip.lib do xHarbour dentro da classe:
METHOD UpLoadFile( cLocalFile, cRemoteFile ) CLASS tIPClientFTP
Tem um se vazio:
IF ! Empty( ::oUrl:cPath )
IF ! ::CWD( ::oUrl:cPath ) <<<<<< aqui ele gera o outro CWD novamente
RETURN .F.
ENDIF
ENDIF
Então percebi que o metodo recebe 2 parametros, e mandei o segundo e ai é
que não vai mesmo, com um parametro só ele entre no !Empty() e volta para o
diretório raiz, mas... envia o arquivo ?
Obrigado pela atenção, vou lutando aqui o Luiz Culik está me passando uma dica vou fazer alguns testes para ver ok.
:)Pos
Hasa
- sygecom
- Administrador

- Mensagens: 7131
- Registrado em: 21 Jul 2006 10:12
- Localização: Alvorada-RS
- Contato:
FTP UPLOAD
O seu código não veio completo para testarmos, mas eu uso conforme abaixo com xharbour 1.2.1 + bcc 5.5.1 e funciona bem a tempos:
Código: Selecionar todos
#define eFTPSERVER1 'www.sygecom.com.br' // ENDEREÇO SERVIDOR 01 DO FTP
#define eFTPPORTA 21 // PORTA DO FTP PARA BAIXAR ATUALIZAÇÕES DO SISTEMA
#define eFTPUSER 'usuario' // USUARIO DO FTP PARA BAIXAR ATUALIZAÇÕES DO SISTEMA
#define eFTPPASS 'senha' // SENHA DO FTP PARA BAIXAR ATUALIZAÇÕES DO SISTEMA
FUNC MAIN()
LOCAL aDir0 := directory('SISTEMA.EXE')
LOCAL nTAMANHO:=aDir0[1,2]
LOCAL oSAY1
@ 245,423 SAY oSAY1 CAPTION " " SIZE 100,22; // tela em Hwgui...desconsiderar se não usar
FONT HFont():Add( '',0,-12,400,,,)
UPLOAD_ARQ( "/atualiza/nomesistema/bin", nTAMANHO, 'SISTEMA.EXE', oSAY, 1 )
RETURN NIL
********************************************************************
STATIC FUNCTION UPLOAD_ARQ( FTPDIR, cTamanho, farq, oSAY1, nSERVER )
********************************************************************
Local cUrl, oUrl, oFTP, cFTPSERVER:=''
IF nSERVER=1
cFTPSERVER:=eFTPSERVER1
cUrl := "ftp://" + eFTPUSER + ":" + eFTPPASS + "@" + cFTPSERVER
ELSE
cFTPSERVER:=eFTPSERVER2
cUrl := "ftp://" + eFTPUSER2 + ":" + eFTPPASS + "@" + cFTPSERVER
ENDIF
oUrl := tUrl():New( cUrl )
oFTP := tIPClientFtp():New( oUrl, .F. )
oFTP:nConnTimeout := 20000
oFTP:bUsePasv := .T.
IF nSERVER=1
oFTP:nDefaultPort := eFTPPORTA //PORTA DO FTP
oFTP:oUrl:cUserID := eFTPUSER
ELSE
oFTP:nDefaultPort := eFTPPORTA2 //PORTA DO FTP
oFTP:oUrl:cUserID := eFTPUSER2
ENDIF
oFTP:oUrl:cServer := cFTPSERVER
oFTP:oUrl:cPassword := eFTPPASS
IF oFTP:Open( cUrl )
IF !oFTP:Cwd(ftpdir) // se não achar o diretorio ele cria
oFTP:MKD(ftpdir) // muda o diretorio
ENDIF
oFTP:Cwd(ftpdir) // muda o diretorio
oFTP:reset()
oFtp:exGauge := { | done | oSAY1:SETTEXT("Enviando Arquivo: "+ farq + STR((done/cTamanho)*100,4)+" %") }
oFtp:UploadFile( farq )
oFtp:UploadFile( ARQ_VERSAO() )
Millisec(1000)
oFTP:Close() // fehca a conexão do FTP
ELSE
RETURN .F.
ENDIF
RETURN .T.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
xHarbour.org + Hwgui + PostgreSql
FTP UPLOAD
Bom ANO de 2013 para Todos, Leo valeu pela dica, no news do xHarbour o colega Claudio H. deu a seguinte dica:
oClient:CWD( cfolder )
oClient:oUrl:cPath := "" <==== agregue esto
If !oClient:UploadFile( cFile )
Foi na mosca, muito obrigado pela dica mesmo assim,
Hasa
