Baixar atualizacao do SITE
Enviado: 20 Abr 2012 15:06
Caros eu estou tentando motar uma rotina para baixar atualizacao do sistema via site, com a contribuicao do Leonardo (rotina abaixo) eu estou tentando entender esse mundo. Por exemplo no comando:
Baixa o arquivo no site, mas como eu faco para salvar este arquivo? Ou seja gostaria de poder dizer onde salvar e etc... Pelo que entendi ele fica em uma variavel/memoria no caso de um arquivo texto fica facil mas e no caso de um executavel?
Código: Selecionar todos
cHtml := oHttp:readAll() // aqui baixa o arquivo
Código: Selecionar todos
***********************************************
FUNCTION VEREFICA_ATUALIZACAO_AUTO(lRET_VERSAO)
***********************************************
LOCAL oHttp, cHtml, cRET:=''
LOCAL nHANDLE_OLD := getactivewindow() // salva o handle da janela anterior
//HW_Atualiza_Dialogo2("Aguarde Procurando Atualizações do Sistema...")
MsgRun("Aguarde Procurando Atualizações do Sistema...")
IF Inetestaconectada()=.F. // verifica se tem acesso a internet
HWG_BRINGWINDOWTOTOP(nHANDLE_OLD) // restaura o handle da janela anterior
Fim_Run()
Return(cRET)
ENDIF
TRY
oHttp:= TIpClientHttp():new( "http://www.netservice.net.br/Clientes/ideal/RecuperarXML.RAR" )
CATCH
HWG_BRINGWINDOWTOTOP(nHANDLE_OLD) // restaura o handle da janela anterior
Fim_Run()
Return(cRET)
END
// Connect to the HTTP server
IF oHttp:open()
cHtml := oHttp:readAll() // aqui baixa o arquivo
IF EMPTY(cHtml)
HWG_BRINGWINDOWTOTOP(nHANDLE_OLD) // restaura o handle da janela anterior
Fim_Run()
RETURN(cRET)
ENDIF
oHttp:close()
IF LEN(cHTML) > 0 .AND. LEN(cHTML) < 20
IF lRET_VERSAO=.F.
IF VAL(cHTML) > VAL(right(GETFILEVERSIONINFO(),4))// aqui eu vejo se a versão gravada no TXT é maior que a versão que está sendo usada
cRET:=LEFT(GETFILEVERSIONINFO(),2)+cHTML
ENDIF
ELSE
cRET:=cHTML
ENDIF
ENDIF
msginfo(cHTML)
ELSE
HWG_BRINGWINDOWTOTOP(nHANDLE_OLD) // restaura o handle da janela anterior
Fim_Run()
RETURN(cRET)
ENDIF
Fim_Run()
RETURN(cRET)
#define eVERSAO '1.2162'
FUNCTION GETFILEVERSIONINFO()
RETURN(eVERSAO)//