Você não é registrado, por favor registre-se para ter acesso ao conteúdo completo.
Caso seja registrado, efetue login.
Esqueceu sua senha? Clique aqui
Recomendamos o uso do Mozilla Firefox para uma melhor visualização.    


Início Postados Hoje Marcar Fóruns Como Lidos Álbums Banidos SE Team Medalhas
Voltar   Secret Experience > Private Server & MMORPG - Administre Um > MU Online > [MU] Administrador > [MU | Admin] Tutoriais > [MU | Admin] Tutoriais Diversos > [MU] Cliente
Registrar Loteria VIPStaff SERegras do fórum Comunidade Arcade Postados Hoje Pesquisar Experience
   

Secret Experience.NET   Secret Experience Corporation - Welcome To The Real World
     Anúncios SE

Tópico Trancado
 
Ferramentas do Tópico Modos de Exibição
Antigo 10-12-2008, 11:23 AM   #1
Membro - Veterano
 
Avatar de Miranda
 
Registrado em: Nov 2008
Posts: 402
Agradeceu: 210
Agradecido 1,012 Vezes em 159 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
Nome Real: Vinicius Miranda

Inventório de Miranda

Arrow [Tutorial] Auto Update para Launcher Versão 4 (VB6)

[Tutorial] Auto Update para Launcher Versão 4 (VB6)

[Descrição]
Este tutorial ensina como criar um Auto Update para colocar para launcher no VB6, um Auto Update serve para atualizar os arquivos do cliente de seus players sempre que necessario.

[Versão 3]
[-] Adicionado novo sistema de verificação de arquivos ja baixados
[-] Adicionado sistema de extração de arquivos rar.
[-] Opções para ativar e desativar noticias e Arquivos RAR.

[Versão 4]
[-] Adicionado sistema de Progresso de todos arquivos de Update.
[-] Adicionada novas funções para mudar as cores das progressbars.
[-] Opção para deletar arquivo RAR apos a Extração ou não.

Exemplo da nova função de colocar cor em ProgressBars:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]

[Tutorial Desing]
Abra um novo projeto no VB, renomeie o form que ira aparecer para: AutoUpdate.

Abra o Form (AutoUpdate) como desing e adicione os seguintes controles:Modifique as seguintes propriedades dos controles:
Aperte CRLT + T e selecione os seguintes controles:
Clique em Aplicar.
Agora adicione os seguintes controles dentro do Form:
Mude a propriedade "Name" do Inet para: iNet

Deixe mais ou menos assim:

[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]

[Tutorial Codigo]
Vá no Menu View clique em Code. Ira aparecer uma janela de codigo, va na primeira linha e digite o seguinte codigo:
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
'Declarações
Private Declare Sub InitCommonControls Lib "comctl32.dll" ()
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

'IMPORTANTE !!! ENDEREÇO DO ARQUIVO DE INFORMAÇÃO DO UPDATE
Private Const sEndereço As String = "http://127.0.0.1:8090/update/"
'IMPORTANTE !!! ENDEREÇO DO ARQUIVO DE INFORMAÇÃO DO UPDATE

'Verificação de Noticias ou Extração de Arquivos .RAR
Private Const Noticias As Boolean = True
Private Const ArquivosRAR As Boolean = True

Private Type tAtualização
    sArquivo As String
    sData_Arquivo As String
    sData_Atualização As String
    sEndereço As String
End Type

Private sTamanho_do_Arquivo As String
Private uInformaçao() As tAtualização

Private Sub cmdCancelar_Click()
Unload Me
End Sub

Private Sub cmdPronto_Click()
Unload Me
End Sub

Private Sub Form_Initialize()
InitCommonControls
End Sub

Private Sub Form_Load()

If Noticias Then
txtPrincipal.Visible = False
lblAtualização.Top = 100
ProgressBar1.Top = 350
cmdPronto.Top = 700
cmdCancelar.Top = 700
Me.Height = 1700
End If

'Desativa o Botão cmdPronto
cmdPronto.Enabled = False
'Verifica de a Pasta update existe
Me.Show
'Inicia o Update
ComeçarAtualização
End Sub

Private Sub Form_Unload(Cancel As Integer)
'Ao fechar o Programa, o download sendo feito pelo Inet e cancelado assim previnindo de erros ou problemas.
iNet.Cancel
End Sub

Private Sub txtPrincipal_GotFocus()
cmdCancelar.SetFocus
End Sub
Public Sub ComeçarAtualização()
'On Error Resume Next
'Declarações do Codigo
Dim iCnt As Integer
Dim sAtualização As String
Dim sNoticias As String
Dim sSplit_a() As String, sSplit_b() As String
Dim bByte_Atualização() As Byte
Dim iInt As Integer
Dim iArquivo As Integer
Dim iBinary As Integer
Dim sTemp As String
Dim lTamanho As Long, lRestante As Long, lTamanhoAgora As Long
Dim bChunk() As Byte
Dim iProgresso As Integer
Dim sPastas() As String
Dim iMax As Integer
Dim sAtualizacaoINI As String
Dim sNoticiasINI As String
Dim sPastasINI As String
Dim lRar As Long
'Fim das declarações


 sAtualização = iNet.OpenURL(sEndereço & "Informacoes.ini", icString)  'Baixando arquivo das informações do update
 'Escrevendo o arquivo de verificação dos arquivos de update
 Open App.Path & "\Informacoes.ini" For Append As #1
 Print #1, sAtualização
 Close #1
 
 lblAtualização.Caption = "Checando Atualizaçoes..."
 
 'Inserindo dados nas strings
 sAtualizacaoINI = ReadINI(App.Path & "\Informacoes.ini", "Informacoes", "Atualizacao")
 sNoticiasINI = ReadINI(App.Path & "\Informacoes.ini", "Informacoes", "Noticias")
 sPastasINI = ReadINI(App.Path & "\Informacoes.ini", "Informacoes", "Pastas")
 Kill App.Path & "\Informacoes.ini"
 
 'Baixando arquivo de atualização e Noticias
 sAtualização = iNet.OpenURL(sEndereço & sAtualizacaoINI, icString)
 sNoticias = iNet.OpenURL(sEndereço & sNoticiasINI, icString)
 
 txtPrincipal.Text = sNoticias
 sAtualização = sAtualização
 sSplit_a = Split(sAtualização, vbCrLf)

 ReDim uInformaçao(UBound(sSplit_a)) 'Re-declarando uInformação

    'Selecionando Informações dos arquivos a serem baixados
    For iCnt = LBound(sSplit_a) To UBound(sSplit_a)
    sSplit_b = Split(sSplit_a(iCnt), ", ")
        With uInformaçao(iCnt)
           .sArquivo = Trim$(sSplit_b(0))
           .sData_Atualização = Trim$(sSplit_b(1))
           .sEndereço = Trim$(sSplit_b(2))
       End With
    Next iCnt
    'Fim da seleção

 'Essa parte vai verificar as pastas, baixar o arquivo, muda a porcetagem do arquivo ja baixado.
 For iCnt = 0 To UBound(uInformaçao)
        'Verifica se o arquivo ja foi baixado
        If VerificarAtualizaçao(uInformaçao(iCnt).sArquivo, uInformaçao(iCnt).sData_Atualização) = False Then
            'Coloca informações na Label
            lblAtualização.Caption = "Baixando " & uInformaçao(iCnt).sArquivo & ", Aguarde..."
            'Verifica as pastas a serem criadas
            sPastas() = Split(sPastasINI, "|")
            For iMax = LBound(sPastas) To UBound(sPastas)
            VerificarPasta (sPastas(iMax))
            Next
            DoEvents
            'Seleciona o arquivo a ser baixado pelo Inet
            bByte_Atualização() = iNet.OpenURL(uInformaçao(iCnt).sEndereço, icByteArray)
            'Verifica se o Inet esta Executando
            Do While iNet.StillExecuting = True
            DoEvents
            Loop
            'Muda o maximo da progressbar para 100
            ProgressBar1.Max = 100
            'Pega o Tamanho do Arquivo e muda os porcentos da progress bar e do Caption do Form
            lTamanho = CLng(iNet.GetHeader("Content-Length"))
            lRestante = lTamanho
            lTamanhoAgora = 0
            Do Until lRestante = 0
                If lRestante > 1024 Then
                    bChunk = iNet.GetChunk(1024, icByteArray)
                    lRestante = lRestante - 1024
                Else
                    bChunk = iNet.GetChunk(lRestante, icByteArray)
                    lRestante = 0
                End If
                lTamanhoAgora = lTamanho - lRestante
                iProgresso = CInt((100 / lTamanho) * lTamanhoAgora)
                ProgressBar1.Value = iProgresso
                AutoUpdate.Caption = iProgresso & "%" & " Baixado" & " - Auto Update - Para ********BR"
        Loop
            'Escreve o arquivo baixado
            iBinary = FreeFile
            If VerificarArquivo(App.Path & "\" & uInformaçao(iCnt).sArquivo) Then
            Kill App.Path & "\" & uInformaçao(iCnt).sArquivo
            End If
            Open App.Path & "\" & uInformaçao(iCnt).sArquivo For Binary Access Write As #iBinary
            Put #iBinary, , bByte_Atualização()
            Close #iBinary
            'Escreve no arquivo de update
            iArquivo = FreeFile
            Open App.Path & sArquivoUPD For Append As iArquivo
            If Not uInformaçao(iCnt).sArquivo = "" Then
            Print #iArquivo, vbNewLine & "(" & iNumero + 1 & ") = " & uInformaçao(iCnt).sArquivo & "|" & uInformaçao(iCnt).sData_Atualização
            Call WriteINI(App.Path & sArquivoUPD, "Atualizações", "Numero", iNumero + 1)
            End If
            Close #iArquivo
            End If
            
            'Verificando se a extração dos arquivos rar esta ativado.
            If ArquivosRAR And VerificarRAR(uInformaçao(iCnt).sArquivo) Then
            'Abrindo arquivo RAR
            Call Rar.Open(App.Path & "\" & uInformaçao(iCnt).sArquivo)
            'Extraindo arquivo RAR
            lRar = Rar.Unrar(App.Path & "\")
            lblAtualização = "Extraindo Arquivo " & uInformaçao(iCnt).sArquivo
            'Se ocorrer tudo bem na extração do rar mostra uma mensagem.
            If lRar <> 0 Then
            lblAtualização = "Arquivo extraido com sucesso."
            End If
            End If
Next iCnt

'Informação ao Completar a Atualização
If iNet.StillExecuting = False Then
lblAtualização.Caption = "Finalizado..."
End If
AutoUpdate.Caption = "Auto Update"
'Ativa o Botão cmdPronto
cmdPronto.Enabled = True
End Sub
Vá no menu Project depois clique em Add Module. Depois Adicione o seguinte codigo nele:
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Public Const sArquivoUPD As String = "\Updates.upd"

Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long

Public Ret As String
Public iNumero As Integer

Public Function VerificarArquivo(Arquivo As String) As Boolean
If Len(Dir$(Arquivo, vbNormal)) > 0 Then
    VerificarArquivo = True
    Exit Function
Else
    VerificarArquivo = False
    Exit Function
End If
End Function

Public Function VerificarPasta(Pasta As String)
If Len(Dir$(Pasta, vbDirectory)) > 0 Then
Else
MkDir App.Path & "\" & Pasta
End If
End Function

Public Function VerificarRAR(sArquivo As String)
If Right(sArquivo, 3) = "rar" Then
VerificarRAR = True
Else
VerificarRAR = False
End If
End Function

Public Sub WriteINI(filename As String, Section As String, Key As String, Text As String)
    WritePrivateProfileString Section, Key, Text, filename
End Sub
Public Function ReadINI(filename As String, Section As String, Key As String)
    Dim RetLen As String
    Ret = Space$(255)
    RetLen = GetPrivateProfileString(Section, Key, "", Ret, Len(Ret), filename)
    Ret = Left$(Ret, RetLen)
    ReadINI = Ret
End Function


Public Function VerificarAtualizaçao(sArquivo As String, sData As String) As Boolean
Dim i As Integer
Dim sResultado As String
Dim sSplit() As String
VerificarAtualizaçao = False

iNumero = ReadINI(App.Path & sArquivoUPD, "Atualizações", "Numero")

For i = 1 To iNumero
sResultado = ReadINI(App.Path & sArquivoUPD, "Atualizações", "(" & i & ")")
If Not IsNull(sResultado) Then
sSplit() = Split(sResultado, "|", , vbTextCompare)
If sSplit(0) = sArquivo And sSplit(1) = sData Then
VerificarAtualizaçao = True
End If
End If
Next
End Function

[Configurando]

Bom.. Esta parte e um pouco complicada então leia com atenção para não ter nenhum problema.

Você precisa ter um Host, este sera ultilizado para guardar as informações do update e os arquivos que seram baixados pelo mesmo.

No host crie um pasta chamada "update". Dentro dessa pasta crie os seguintes arquivos:
O modelo do "Informacoes.ini" e este:
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
[Informacoes]
Atualizacao = Atualizacoes.txt
Noticias = Noticias.txt
Pastas =
Atualizacao = neste local coloque o nome do arquivos de atualizações onde ficaram os arquivos a serem atualizados.
Noticias = neste local coloque o nome do arquivo de Noticias, onde ficaram as noticias que serão mostradas no programa.
Pastas = neste local você deve colocar as pastas que precisam ser criadas, neste formato: Pasta1|Pasta2|Pasta3

O modelo do "Atualizacoes.txt" e este:
As informações são separadas por "," (virgulas).
Se você quiser colocar mais um arquivo e so colocar ele na proxima linha.

O modelo do "Noticias.txt" e um texto normal, para mostrar as informações das ultimas atualizações.

Depois de ja ter os arquivos de update configurados, você vai precisar mudar a URL no programa.
Procure no Form AutoUpdate:
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Private Const sEndereço As String = "http://127.0.0.1:8090/update/"
Troque "http://127.0.0.1:8090/update/" pelo Endereço do seu host.

No Form AutoUpdate se encontram duas Const, essas consts dependedo do valor ativa ou não certas opções.

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Private Const Noticias As Boolean = True
True: Ativa as noticias, False: Desativa as noticias.

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Private Const ArquivosRAR As Boolean = True
True: Ativa a extração de arquivos .rar, False: Desativa a extração de arquivos .rar.

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Private Const DeletarRAR As Boolean = False
True: Deleta o arquivo.rar apos extração., False: Não deleta.

A nova função da Source, a função que muda as cores das progressbars são muito faceis de se ultilizar, primeiro e preciso procurar no Form_Load as seguintes linhas:
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
'Mudando a Cor da ProgreessBar1
Call ProgressBar_ForeColor(ProgressBar1.hwnd, "0000FF")
'Mudando a Cor da ProgreessBar2
Call ProgressBar_ForeColor(ProgressBar2.hwnd, "8B7500")
No codigo: Call ProgressBar_ForeColor(ProgressBar1.hwnd, "0000FF")
O "0000FF" Representa uma cor em HTML, essa representação de cor pode ser encontrada em varios editores de imagem inclusive o Photoshop.
Lembrando: O Primeiro codigo representa a ProgressBar de baixo, e o segundo Representa a ProgressBar de Cima.

Indicação de site para encontrar uma cor desejada:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar] (Otimo ;))

[Source]
Download V3: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Download V4: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]

[Source Launcher & Update]
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]

[Observações]
Se durante o teste o Update der algum erro porfavor venha neste post, e poste o Numero do Erro, Descrição e Linha (Clicando em Debug).

[Creditos]
EneMy - Equipe System

Miranda está offline  
Os Seguintes 9 Usuários disseram Obrigado(a) para Miranda por gostarem deste post :
adm_branco (07-04-2009), danieljf (12-08-2011), Extreme (15-08-2009), guboy (21-09-2009), kellvem (08-03-2010), kessadamax (25-08-2009), rafap4 (27-09-2011), rensilva (18-08-2009), Thurg (09-02-2010)
Links Patrocinados
Antigo 19-06-2009, 11:51 AM   #2
Amigo SE
 
Avatar de vicfelipe
 
Registrado em: Nov 2008
Localização: Fim de Mundo chamado: Hortolândia
Posts: 778
Agradeceu: 434
Agradecido 2,796 Vezes em 416 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
Enviar mensagem via Windows Live Messenger para vicfelipe Enviar mensagem via Skype para vicfelipe
Nome Real: Victor Felipe Alencastro

Inventório de vicfelipe

Padrão

Venho Informa que os Links estão Off e se alguem Tiver o Programa Por Favor nos Mande o Link para Algum Moderador.
Pois o dono do tutorial Deletou o Tópico melhor guardar muito bem Este

__________________
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
vicfelipe está offline  
Antigo 20-06-2009, 11:52 AM   #3
John-X
Amigo SE
 
Avatar de John-X
 
Registrado em: Dec 2008
Posts: 110
Agradeceu: 13
Agradecido 255 Vezes em 66 Posts
Achei Ruim:
Acharam ruim Vezes em Posts

Inventório de John-X

Padrão

Acho que não é necessário, pois no tutorial já é explicado como fazer o auto-update, mais se for necessário posso refazer e upar.

John-X está offline  
Antigo 20-06-2009, 12:17 PM   #4
Amigo SE
 
Avatar de vicfelipe
 
Registrado em: Nov 2008
Localização: Fim de Mundo chamado: Hortolândia
Posts: 778
Agradeceu: 434
Agradecido 2,796 Vezes em 416 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
Enviar mensagem via Windows Live Messenger para vicfelipe Enviar mensagem via Skype para vicfelipe
Nome Real: Victor Felipe Alencastro

Inventório de vicfelipe

Padrão

É Necessário, pois os links do Tutorial esta todos Off e creio que o autor deste tópico não irá reupá-los, e este é uns dos unicos tutoriais ainda existente de se criar o Launcher, sendo que o Original Foi deletado..

__________________
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
vicfelipe está offline  
Antigo 20-06-2009, 02:31 PM   #5
islandex
Banido
 
Avatar de islandex
 
Registrado em: Mar 2009
Posts: 2
Agradeceu: 7
Agradecido 3 Vezes em 1 Post
Achei Ruim:
Acharam ruim Vezes em Posts

Inventório de islandex

Padrão

:D, como colocar dentro do Launchher? :S

islandex está offline  
Antigo 23-06-2009, 09:02 PM   #6
John-X
Amigo SE
 
Avatar de John-X
 
Registrado em: Dec 2008
Posts: 110
Agradeceu: 13
Agradecido 255 Vezes em 66 Posts
Achei Ruim:
Acharam ruim Vezes em Posts

Inventório de John-X

Padrão

Assim que eu instalar, o visual basic, vou fazer o re-upload. Por favor aguardem.

John-X está offline  
Antigo 10-07-2009, 03:34 PM   #7
FRCA
Membro - Recruta
 
Avatar de FRCA
 
Registrado em: Feb 2009
Posts: 3
Agradeceu: 3
Agradecido 1 Vez em 1 Post
Achei Ruim:
Acharam ruim Vezes em Posts

Inventório de FRCA

Padrão

link para download tudo off =\

FRCA está offline  
Antigo 18-08-2009, 10:41 PM   #8
rensilva
Membro - Aspirante
 
Avatar de rensilva
 
Registrado em: Jun 2009
Localização: Maceio AL
Posts: 60
Agradeceu: 6
Agradecido 21 Vezes em 14 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Enviar mensagem via Windows Live Messenger para rensilva

Inventório de rensilva

Padrão

Miranda revisa o topico e ativa os links....

rensilva está offline  
Antigo 19-08-2009, 12:51 PM   #9
LolMaster
Amigo SE
 
Avatar de LolMaster
 
Registrado em: Dec 2008
Localização: VSF
Posts: 1,117
Agradeceu: 387
Agradecido 1,287 Vezes em 526 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Pontos: 14,416, Nível: 77
Pontos: 14,416, Nível: 77 Pontos: 14,416, Nível: 77 Pontos: 14,416, Nível: 77
Atividade: 16%
Atividade: 16% Atividade: 16% Atividade: 16%

Inventório de LolMaster Usuário possui 1x SW #9 Usuário possui 1x FX User Usuário possui 1x Ford Mustang Usuário possui 1x Apple Inc. Fan/User Usuário possui 1x PS User

Padrão

Infelizmente os links se encontram offline.
O tópico permanecerá trancado até que sejam fornecidos novos links válidos.
Caso alguém possua os arquivos, por favor entrar em contato comigo via [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar] .

Abraços.

__________________
[]s,
LolMaster
LolMaster está offline  
Tópico Trancado


Regras para Posts
Você não pode postar novos tópicos
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar seus posts

Código [IMG] Sim
Código HTML Não

Ir para...

Tópicos Similares
Tópico Tópico Iniciado Por Fórum Respostas Última Mensagem
[INFO] Tudo sobre Lineage II xxxvalterxxx [Lineage] Praça de Giran 10 17-03-2013 04:44 PM
Site ^^ Setokaiba [L2J] Tutoriais 10 05-06-2009 11:14 PM
[Vice City] GTA: Vice City Damage [GTA] Tutoriais 0 01-02-2009 11:39 AM
[San Andreas] Detonado GTA: San Andreas Damage [GTA] Tutoriais 0 01-02-2009 11:38 AM
99 Dicas para Xp djmixedad [BAR] Outros Assuntos 0 05-01-2009 03:30 AM


Horários baseados na GMT -3. Agora são 11:29 PM.