Clipper On Line • Ver Tópico - Dois Exemplos de FTP - DownLoad

Dois Exemplos de FTP - DownLoad

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

Dois Exemplos de FTP - DownLoad

Mensagempor sygecom » 20 Fev 2008 19:20

Exemplo 01(Inicia na surdina, só avisa se tiver nova versão)

#include "windows.ch"
#include "guilib.ch"
#include "hwgui.ch"

***********************
Function Baixa_Automatico
***********************
if Inetestaconectada()=.T.  // verefica a conexão com a internet
   StartThread( @Donwload_Auto(),"1.0")  // tem que compilar em MT, para rodar na surdina
endif
Return

****************************
Function Donwload_Auto(vVersao)
****************************
Private vBaixa:="N"
ftpproto ="ftp://"
ftpserver = "ftp.servidor.com.br"
ftpuser = "usuario"
ftppass = "senha"
curl:=ftpproto+ftpuser+":"+ftppass+"@"+ftpserver
oUrl:= turl():new(curl)
oCred:= tIPCredentials()
oFtp:= tipclientftp():NEW(oUrl,,.T.)
oFTP:nConnTimeout := 20000
oFTP:bUsePasv     := .T.
IF oFTP:Open()
   oFTP:Cwd("www/pasta/sistema")     // muda o diretorio no FTP
   IF !empty(clista:=oFTP:List())
      oFtp:DownLoadFile("update\versao.txt") // baixa o arquivo versão.txt dentro da pasta update

      HAND=FOPEN("update\versao.txt")
      VERSAODISP=FREADSTR(HAND,4)       // verefica a versão
      FCLOSE(HAND)
      ferase("update\versao.txt")       // apaga o arquivo baixado

      IF VAL(VERSAODISP) > VAL(vVersao)  // verefica se tem versão disponivel
         IF MsgYesNo("Há uma Nova Atualização Disponivel, deseja Atualizar Agora ?")

            cTamanho:=oFTP:fileSize( "sistema.exe" )
            Inicia_Progress("update\sistema.exe",cTamanho,"sistema.exe")  // mostra o progressp na tela

            IF File("update\sistema.exe")
               Private oDlgHabla:=nil
               MsgRun("Aguarde...Fechando conexão com Servidor..." )
               oFTP:CLOSE()  // fechando conexão com o FTP
               HW_Atualiza_Dialogo("Aguarde...Renomeando Arquivos Baixados..." )
               RenameFile(NomeExecutavel(),"sistema2.exe" )
               HW_Atualiza_Dialogo("Aguarde...Copiando Arquivos Baixados para pasta SISTEMA.." )
               __CopyFile("update\sistema.exe",NomeExecutavel(.t.))
               HW_Atualiza_Dialogo("Aguarde...Limpando arquivos Temporarios..." )
               Ferase("update\sistema.exe")
               MsgInfo("O Sistema vai fechar essa sessão para Validar a atualização","Aviso do Sistema")
               WinExec("SISTEMA.EXE 2",.T.)  // 2=Não verefica se já esta aberto o sistema.
               Fim_Run()
               quit
            Endif
         Endif
      ENDIF
   ENDIF
   oFTP:CLOSE()
ENDIF
Return


Exemplo 02:
#include "windows.ch"
#include "guilib.ch"
#include "hwgui.ch"

******************
Function Baixa_Arq
******************
Baixa_Arq2("1.0")

IF File("update\sistema.exe")
   Private oDlgHabla:=nil
   MsgRun("Aguarde...Renomeando Arquivos Baixados..." )
   RenameFile(NomeExecutavel(),"sistema2.exe" )
   HW_Atualiza_Dialogo("Aguarde...Copiando Arquivos Baixados para pasta SISTEMA.." )
   __CopyFile("update\sistema.exe",NomeExecutavel(.t.))
   HW_Atualiza_Dialogo("Aguarde...Limpando arquivos Temporarios..." )
   Ferase("update\sistema.exe")
   MsgInfo("O Sistema vai fechar essa sessão para Validar a atualização","Aviso do Sistema")
   HW_Atualiza_Dialogo("Aguarde...Limpando arquivos Temporarios..." )
   WinExec("sistema.exe 2",.T.)
   Fim_Run()
   quit
ELSE
   IF !FILE("update\Not_Update.txt")
      MsgInfo("Parabéns ! Você Já esta utilizando a versão mais recente do [ SISTEMA ] e portanto não há atualizações disponível.","Aviso do Sistema")
      FERASE("update\Not_Update.txt")
   ELSE
      FERASE("update\Not_Update.txt")
   ENDIF
Endif
Return NIL

***************************
Function Baixa_Arq2(vVERSAO)
***************************
SET DATE BRITISH
SET EPOCH TO 2000
Private oDlgHabla:=nil
MsgRun("Aguarde Vereficando conexão com a Internet..." )

IF Inetestaconectada()=.T.
   Fim_Run()
   IF !FILE("res\buscar.bmp")
      Donwload_File("www/pasta/sistema","buscar.bmp","res\buscar.bmp")
   Endif
   IF !FILE("res\sygecom.bmp")
      Donwload_File("www/pasta/sistema","sygecom.bmp","res\sygecom.bmp")
   Endif
   Donwload_File("www/pasta/sistema","sistema.exe","update\sistema.EXE")
else
   Fim_Run()
   MsgInfo("Não foi possível estabelecer uma conexão com o Servidor,Favor vereficar sua Intenet ou tente mais tarde.","Aviso do Sistema")
Endif
Return
**********************************************
Function Donwload_File(ftpdir,ftpfile,fdestino)
**********************************************
Private oDlgHabla:=nil
MsgRun("Aguarde Procurando Atualizações...")
Private vBaixa:="N"
ftpproto ="ftp://"
ftpserver = "ftp.servidor.com.br"
ftpuser = "usuario"
ftppass = "senha"
curl:=ftpproto+ftpuser+":"+ftppass+"@"+ftpserver
oUrl:= turl():new(curl)
oCred:= tIPCredentials()
oFtp:= tipclientftp():NEW(oUrl,,.T.)
oFTP:nConnTimeout := 20000
oFTP:bUsePasv     := .T.
IF oFTP:Open()
   oFTP:Cwd(ftpdir)     // muda o diretorio
   IF !empty(clista:=oFTP:List())
      IF ftpfile="sistema.exe"
         ferase("update\versao.txt")
         oFtp:DownLoadFile("update\versao.txt")
         oFTP:reset()
         oFtp:DownLoadFile("update\versao.txt")

         HAND=FOPEN("update\versao.txt")
         VERSAODISP=FREADSTR(HAND,4) // Le os 4 primeiros bytes do aquivo baixado
         FCLOSE(HAND)
         ferase("update\versao.txt")

         IF VAL(VERSAODISP) > VAL(vCOMPILA)
            vBaixa="S"
         ENDIF
      else
         vBaixa="S"
      endif
      IF vBaixa="S"
         Fim_Run()
         IF MsgYesNo("Há uma Nova Atualização Disponivel, deseja Atualizar Agora ?")

            cTamanho:=oFTP:fileSize( ftpfile )
            Inicia_Progress(fdestino,cTamanho,ftpfile)
         ELSE
            arq="update\Not_Update.txt"
            if !file(arq)
               arqh=fcreate(arq,0)
               fclose(arqh)
            endif
            rele arq, arqh
         Endif
      ENDIF
   ENDIF
   oFTP:CLOSE()
Else
   MsgInfo("Não foi possivel se conectar ao servidor, Favor tente mais tarde.","Aviso do Sistema")
ENDIF
Fim_Run()
Return

Funções Extras:
*************************************************
Function Inicia_Progress(fdestino,wTotal,ftpfile)
*************************************************
Private oDlgHabla:=nil
MsgRun("Conectando, Aguarde...")
oFtp:exGauge := { | done, size| ShowGauge(done, size, wTotal, ftpfile ) }
oFtp:DownLoadFile(fdestino)
Fim_Run()

**************************************************
Function ShowGauge( nSent, nSize, wTotal, ftpfile )
**************************************************
GTprocessmessages()
HW_Atualiza_Dialogo(ftpfile+" "+ STR(nSent)+" Byts de: " + str(wTotal)+ " Byts "+str((nSent/wTotal)*100) +" %" )
Return

FUNCTION MsgRun( cMsg,cTime )
   Local vModal,vMsg:=[Aguarde em processamento....],vMsg2:=[]
   Local oFonte:= oFonte:= HFont():Add( "Arial"     , 0 ,-15,500,255 )
   PRIVATE oTimHabla
   if cMsg#nil
      vMsg:=cMsg
   endif

   INIT DIALOG oDlgHabla ;
   SIZE 485, 80  ;
   STYLE DS_CENTER + WS_VISIBLE ;
   ON INIT { || IniDlgHabla(cTime) } ;
   ON EXIT { || Hw_FimDialogoTemporal(cTime) }

   @ 0, 20  SAY vMsg SIZE 465, 20 STYLE SS_CENTER FONT oFonte

   if ctime=nil
      vModal:=.t.
   endif
   oDlgHabla:Activate(vModal)
Return .T.

static FUNCTION IniDlgHabla(cTime)
oDlgHabla:Center()
if cTime#nil
   SET TIMER oTimHabla OF oDlgHabla ID 9006 VALUE cTime ACTION {|| CierraDialogo() }
endif
Return .T.

FUNCTION Hw_FimDialogoTemporal(cTime)
if cTime#nil
   if oDlgHabla#nil
      oDlgHabla:close()
      oDlgHabla:=nil
   endif
endif
Return .T.

Function Fim_Run()
IF oDlgHabla#NIL
   oDlgHabla:CLOSE()
ENDIF

FUNCTION CierraDialogo()
   EndDialog()
RETURN .T.

FUNCTION HW_Atualiza_Dialogo(vMensagem)
GTprocessmessages()
oDlgHabla:ACONTROLS[1]:SETTEXT(vMensagem)
RETURN NIL

**************************************
Function inetestaconectada( cAddress )
**************************************
LOCAL aHosts
LOCAL cName
InetInit()
IF cAddress == NIL
   cAddress := "www.google.com.br"
ENDIF
aHosts := InetGetHosts( cAddress )
IF aHosts == NIL .or. len(aHosts)=0
   InetCleanup()
   RETURN .f.
endif
InetCleanup()
RETURN .t.


Obs: tem que linkar a TIP.LIB
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7005
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

Mensagempor marcos.gurupi » 22 Fev 2008 11:16

Amigo!!! Como vc adivinhou? Eu estava precisando justamente disso. Vou fazer os testes. Obrigado!

Marcos Roberto.
marcos.gurupi
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 930
Data de registro: 06 Jul 2004 11:53
Cidade/Estado: Gurupi-TO
Curtiu: 0 vez
Mens.Curtidas: 6 vezes

Mensagempor sygecom » 22 Fev 2008 12:47

Postei pq um colega na sessão xharbour estava querendo, Qualquer coisa prende o grito !
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7005
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

Mensagempor marcos.gurupi » 19 Mar 2008 15:04

Por varios motivos q vcs (programadores) colegas sabem somente hoje eu comecei a testar as funcoes de ftp postadas, mas esta apresentando o seguinte erro logo no inicio:

Error BASE/1066 Argument error: conditional
Called from ftpcln.prg->TIPCLIENTFTP:NEW(116)
Called from PDVNET.PRG->DONWLOAD_FILE(887)
Called from PDVNET.PRG->BAIXA_ARQ2(863)
Called from PDVNET.PRG->(b)MAIN(338)
Called from ->ONCOMMAND(426)
Called from hwindow.prg->(b)HMAINWINDOW(155)
Called from hwindow.prg->HMAINWINDOW:ONEVENT(234)
Called from ->HWG_ACTIVATEMAINWINDOW(0)
Called from hwindow.prg->HMAINWINDOW:ACTIVATE(223)
Called from PDVNET.PRG->MAIN(349)

HwGUI 2.16 xHarbour build 0.99.70 Intl. (SimpLex)
Date:19/03/2008
Time:14:20:18
marcos.gurupi
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 930
Data de registro: 06 Jul 2004 11:53
Cidade/Estado: Gurupi-TO
Curtiu: 0 vez
Mens.Curtidas: 6 vezes

Mensagempor sygecom » 20 Mar 2008 08:19

marcos.gurupi escreveu:Por varios motivos q vcs (programadores) colegas sabem somente hoje eu comecei a testar as funcoes de ftp postadas, mas esta apresentando o seguinte erro logo no inicio:

Error BASE/1066 Argument error: conditional
Called from ftpcln.prg->TIPCLIENTFTP:NEW(116)
Called from PDVNET.PRG->DONWLOAD_FILE(887)
Called from PDVNET.PRG->BAIXA_ARQ2(863)
Called from PDVNET.PRG->(b)MAIN(338)
Called from ->ONCOMMAND(426)
Called from hwindow.prg->(b)HMAINWINDOW(155)
Called from hwindow.prg->HMAINWINDOW:ONEVENT(234)
Called from ->HWG_ACTIVATEMAINWINDOW(0)
Called from hwindow.prg->HMAINWINDOW:ACTIVATE(223)
Called from PDVNET.PRG->MAIN(349)

HwGUI 2.16 xHarbour build 0.99.70 Intl. (SimpLex)
Date:19/03/2008
Time:14:20:18

O Exemplo acima foi postado para ser usado com xharbour 1.0.0, se queres usar com xharbour 9970, deve alterar a linha "tipclientftp()" por "tipclient()"
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7005
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

Mensagempor marcos.gurupi » 25 Mar 2008 11:30

Quando eu uso o comando cTamanho:=oFTP:fileSize( ftpfile ) ele apresenta o seguinte erro:
Error BASE/1004  Message not found: TIPCLIENTFTP:FILESIZE
Called from ->TIPCLIENTFTP:ERROR(179)
Called from tobject.prg->(b)HBOBJECT:HBOBJECT(105)
Called from ->TIPCLIENTFTP:MSGNOTFOUND(0)
Called from ftpcln.prg->TIPCLIENTFTP:FILESIZE(167)
Called from PDVNET.PRG->DONWLOAD_FILE(1094)
Called from PDVNET.PRG->BAIXA_ARQ2(1057)
Called from PDVNET.PRG->(b)MAIN(343)
Called from ->ONCOMMAND(426)
Called from hwindow.prg->(b)HMAINWINDOW(155)
Called from hwindow.prg->HMAINWINDOW:ONEVENT(234)
Called from ->HWG_ACTIVATEMAINWINDOW(0)
Called from hwindow.prg->HMAINWINDOW:ACTIVATE(223)
Called from PDVNET.PRG->MAIN(357)

HwGUI 2.16 xHarbour build 0.99.70 Intl. (SimpLex)
Date:25/03/2008
Time:11:35:48
marcos.gurupi
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 930
Data de registro: 06 Jul 2004 11:53
Cidade/Estado: Gurupi-TO
Curtiu: 0 vez
Mens.Curtidas: 6 vezes

Mensagempor sygecom » 26 Mar 2008 13:13

O Exemplo acima foi postado para ser usado com xharbour 1.0.0, se queres usar com xharbour 9970, deve alterar a linha "tipclientftp()" por "tipclient()"
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7005
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

Mensagempor marcos.gurupi » 26 Mar 2008 14:12

Caro leonardo a linha jah foi alterada e n ocorre mais erro o erro descrito acima se refere a outro q n saberia explicar o motivo.

A linha alterada anteriormente:

//oFtp:= tipclientftp():NEW(oUrl,,.T.) // xhb 1.0.0
oFtp:= tipclient():NEW(oUrl,,.T.) //xhb 0.99.70

A linha do err atual:

cTamanho:=oFTP:fileSize(ftpFile)
marcos.gurupi
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 930
Data de registro: 06 Jul 2004 11:53
Cidade/Estado: Gurupi-TO
Curtiu: 0 vez
Mens.Curtidas: 6 vezes

Mensagempor sygecom » 26 Mar 2008 15:21

Que estranho marcos, pq pelo ERRO vc esta uando a TIP.LIB da 1.0.0 . Verefique se a sua TIP.LIB é da versão 9970 !
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com

Faça você também sua doação esse fórum é uma lenda viva: http://www.pctoledo.com.br/doacao
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 7005
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 130 vezes

Re: Dois Exemplos de FTP - DownLoad

Mensagempor Mário Isa » 30 Dez 2008 13:22

Leonardo disse:
StartThread( @Donwload_Auto(),"1.0") // tem que compilar em MT, para rodar na surdina


O que significa MT ?

Mário
Avatar de usuário

Mário Isa
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 902
Data de registro: 07 Jul 2004 13:54
Cidade/Estado: Ilha Solteira-sp
Curtiu: 5 vezes
Mens.Curtidas: 8 vezes

Re: Dois Exemplos de FTP - DownLoad

Mensagempor Maligno » 30 Dez 2008 15:27

MultiTarefa.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar de usuário

Maligno
Membro Master

Membro Master
 
Mensagens: 6390
Data de registro: 06 Jul 2004 01:40
Cidade/Estado: Londrina/PR
Curtiu: 1 vez
Mens.Curtidas: 14 vezes

Dois Exemplos de FTP - DownLoad

Mensagempor Abel » 06 Jul 2012 01:54

Maligno, estou tentado fazer uma rotina para baixar uma EXE do site.
ao testar os exemplos postados da erro de compilacao, talvez porque muitas destas estao para xharbour e nao harbour como estou usando.

Analisando a wapi.exe vi que tem um comando para baixar um arquivo atraves do http, fiz um teste pela linha de comando do msdos e deu certo., minha duvida é se seria possivel compilar junto com harbour alguma parte do fonte evitando assim ter que executar um EXE que pode ser bloqueado por diversos antivirus existentes hoje.

grato pela atencao,
ABEL
Abel
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 310
Data de registro: 14 Mar 2012 13:16
Cidade/Estado: sao paulo / sp
Curtiu: 1 vez
Mens.Curtidas: 2 vezes

Dois Exemplos de FTP - DownLoad

Mensagempor Pablo César » 06 Jul 2012 11:43

Analisando a wapi.exe vi que tem um comando para baixar um arquivo atraves do http, fiz um teste pela linha de comando do msdos e deu certo., minha duvida é se seria possivel compilar junto com harbour alguma parte do fonte evitando assim ter que executar um EXE que pode ser bloqueado por diversos antivirus existentes hoje.
Eu vou te responder pelo Maligno (ele anda meio ausente ultimamente). A biblioteca WAPI.LIB foi desenvolvida para uso exclusivo no Clipper, portanto não daria para ser compilada em Harbour ou xHarbour. O que pode é ser utilizada desde a sua aplicação Harbour ou xHarbour, mandando executar o WAPI.EXE e utilizá-lo como um aplicativo externo, da mesma forma que você fez para executar na linha de comando. O WAPI, possui todos os fontes utilizados, na maioria em linguagem C++, talvez daria para adaptar-lo de forma que você pudesse utilizar as funções em C de dentro da sua aplicação Harbour. Mas isso iria demandar em algumas adaptações em linguagem ANSI (puro C), apesar que aqui no fórum já foi mencionado que é possível utilizar C++ e até mesmo Assembler.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Dois Exemplos de FTP - DownLoad

Mensagempor Toledo » 06 Jul 2012 13:26

Abel escreveu:ao testar os exemplos postados da erro de compilacao, talvez porque muitas destas estao para xharbour e nao harbour como estou usando.


Abel, os exemplos que o Leonardo passou funciona sim com Harbour. Então se você tem acesso ao FTP (conta de FTP, usuário e senha) deste site onde está o arquivo EXE que você quer baixar, você pode usar o exemplo Donwload_Auto() que o Leonardo postou na primeira mensagem deste tópico:

Function Donwload_Auto()
****************************
ftpproto ="ftp://"
ftpserver = "ftp.servidor.com.br"  //endereço de FTP do site
ftpuser = "usuario"   //Usuário da conta FTP
ftppass = "senha"    //Senha da conta FTP
curl:=ftpproto+ftpuser+":"+ftppass+"@"+ftpserver
oUrl:= turl():new(curl)
oCred:= tIPCredentials()
oFtp:= tipclientftp():NEW(oUrl,,.T.)
oFTP:nConnTimeout := 20000
oFTP:bUsePasv     := .T.
IF oFTP:Open()
   oFTP:Cwd("www/pasta/sistema")     // informe o diretorio (no site) onde está o arquivo EXE que voce vai copiar
   IF !empty(clista:=oFTP:List())
      oFtp:DownLoadFile("arquivo.exe")  //informe o nome do arquivo que você quer baixar
   ENDIF
   oFTP:Close()
ENDIF
Return


Compile com a lib HBTIP.

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 de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Dois Exemplos de FTP - DownLoad

Mensagempor cjp » 02 Ago 2012 18:12

Pessoal, estou testando usar o FTP diretamente de dentro do xHarbour. Pesquisando no fórum, achei este post com este exemplo e fui testar.

Achei ele ótimo, funcionou beleza.

Só precisava saber quais os comandos para colocar arquivo no FTP usando esta função e também para excluir arquivos do FTP.

Alguém poderia me ajudar?
Inacio de Carvalho Neto
cjp
Usuário Nível 6

Usuário Nível 6
 
Mensagens: 1527
Data de registro: 19 Nov 2010 21:29
Cidade/Estado: paraná
Curtiu: 10 vezes
Mens.Curtidas: 20 vezes

Próximo



Retornar para HwGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 3 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro