Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×

Launcher com AutoUpdate(idhttp) e verificador de versão simples


-Mizuki.
 Compartilhar

Posts Recomendados

Olá pessoal, hoje estou aqui para lhes ensinar a criar um launcher com auto-update e verificador de versão, mas como funciona?

R: Simples, ao abrir o launcher ele vai se conectar a um determinado ip, baixar um arquivo chamado 'versaoatual.txt', abri o mesmo em um memo, depois vai carregar em outro memo o arquivo 'versao.txt', que deverá estar na pasta do launcher, se o número da versão de ambos for igual ele libera o botão jogar, se não for, ele baixa o 'update.txt', carrega em um terceiro memo, e baixa o arquivo que estiver escrito na primeira linha dele, exemplo: main.exe - mas lembre-se ele só baixa um arquivo por versão, eu já estarei colocando a faca e o queijo na mão de vocês, agora basta corta-lo, ou seja, através deste tutorial, se você tiver o minimo de experiência, dá pra fazer um launcher avançado, mas isto é com vocês.

No fim do tópico, se encontra um tutorial extra, que é de como fazer com que seu launcher extraia arquivos .rar, assim facilitando a aplicação de vários arquivos em um só download.

É necessário um conhecimento Básico em delphi!

Vamos lá!

 

Tutorial criando launcher:

 

Antes de mais nada saiba que não vou postar o código no tópico, vocês deverão ler o mesmo nas imagens e escreve-lo, pois se vocês apenas derem um ctrl+c ctrl+v não vão aprender nada.(caso a imagem esteja pequena, clique em um simbolo "+" que fica logo acima da mesma, isso fará com que fique maior.)

 

Comece um novo projeto no delphi;

 

Agora salve o mesmo em uma pasta de sua preferencia;

 

Nesta pasta crie um arquivo de texto com nome "versao" -- sem as "";

 

Agora na pasta www do seu appserv/host crie dois arquivos de texto um com nome de "versaoatual" e outro com nome "update";

 

Agora já podemos começar a programar;

 

Adicione um Idhttp - palheta Indy Clients;

 

Um timer - Palheta System;

 

Uma progressbar - Palheta Win32;

 

Um la~bel - Palheta Standard; (Apague o texto)(o ~ é por causa da censura do fórum)

 

Um Button - Palheta Standard; (Renomeie para Jogar)

 

3 Memos - Palheta Standard; (Na propriedade name do memo 1 renomeei para lista, e na propriedade Visible dos 3 memos deixe False)

 

E um WebBrowser - Palheta Internet.

 

Organize-os da seguinte maneira:

 

jg1tly.png

 

--Códigos--

 

*Etapa 1:

 

Dê dois cliques no button1 e adicione o código:

 

15q9t3o.png

 

No event OnCreate do form1 adicione:

 

ok3ud.png

 

No Event OnWork do idhttp adicione:

 

2i059qb.png

 

Agora no Event OnWorkBegin:

 

2lmv236.png

 

E por fim no Evento OnWorkEnd:

 

2z7hhed.png

 

*Etapa 2[FINAL]:

 

Obs: Leia os comentários de verde no código para saber como configurar.

 

Dê dois cliques no Timer 1 e adicione o primeiro código:

 

 

2gw5b92.png

 

Agora abaixo do código digitado acima adicione estes:

 

 

6hjo15.png

15g5k3l.png

 

 

Extra - Colocando um extrator .rar no launcher

 

Obs: É necessário que você tenha o componente "DFUnRar" instalado em seu delphi.

 

Vamos começar:

 

Adicione mais um timer a sua For~m;

Adicione um componente "DFunrar" na sua For~m;

Adicione também um Edit, altere as seguintes propriedades: Text : deixe em branco e Visible deixe False;

 

Agora você deverá procurar pelo último código da etapa 2 que foi passado no tutorial acima e adicionar o código:

timer2.enabled := True;

 

Veja na imagem aonde você deve botar este código (observe que está acima da área em azul):

 

23ib3vp.png

 

Agora dê dois cliques no timer 2 e adicione o código:

 

2zyg47t.png

 

Pronto, agora o seu launcher pode extrair o arquivo .rar que estará escrito no update.txt

Não se esqueça de colocar o "unrar.dll" na pasta do seu launcher!

 

 

 

 

Créditos Mizuki

E à quem criou o código de download via idhttp.

Link para o comentário
Compartilhar em outros sites

  • 2 semanas atrás...

Bom, voltei á programar Delphi esses dias ( tive que migrar para o C# por problemas de compatibilidade entre o Delphi e meu PC, mas isso não importa ).

E queria continuar um projeto que fiz em c# para o servidor de SA:MP em que sou Administrador, só que ele está dando 1 erro quando eu executo a aplicação.

Ai vai as imagens:

xmtr1z.png

5zks5h.png

 

Se alguém puder ajuda eu agradeço, pois esse sistema de Auto-Update é muito importante para eu dar continuação á meu Projeto.

Link para o comentário
Compartilhar em outros sites

O problema esta na hospedagem do 000Webhost, eu utilizo a mesma para hospedar meu blog, e quando testei o launcher nela, ocorreu o mesmo erro, por algum motivo a hospedagem não permite o download do arquivo.

Para tirar a prova teste com um appserv em localhost.

Link para o comentário
Compartilhar em outros sites

O problema esta na hospedagem do 000Webhost, eu utilizo a mesma para hospedar meu blog, e quando testei o launcher nela, ocorreu o mesmo erro, por algum motivo a hospedagem não permite o download do arquivo.

Para tirar a prova teste com um appserv em localhost.

 

Mas quando você abre pelo navegador, não funciona?

Link para o comentário
Compartilhar em outros sites

  • 3 semanas atrás...

ótimo...

Mereceu mais do que ir na quick, ganhou um Favorito aqui :amor:

 

O tópico está perfeito, lembrando que estou fazendo um antivírus, e esse sistema vai me ajudar muito... Até que eu já havia pensado em fazer dessa forma, mas não sabia como, até porque eu nunca trabalhei com Downloader e Extrator em idHttp...

 

Mais lembrando que eu vou fazer algumas modificações para deixar auto-update :hm:

 

Very Agradecer (:

aU2Jw.png

Membro - Bronze - Geek - Bronze - Tech - Mod - Coord - Co-Admin - Platinum

Link para o comentário
Compartilhar em outros sites

Caro Victor,

 

Evite comentar em tópicos cujo último post tem mais de 15 dias.

 

Isso traz tópicos velhos de volta a primeira página,desorganizando a área.

 

Qualquer dúvida sobre as regras gerais do fórum, leia:

 

 

 

Tópico Trancado

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.