Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: e500 en 14 Junio 2010, 23:12 pm



Título: Aplicación Actualizable
Publicado por: e500 en 14 Junio 2010, 23:12 pm
Hé visto varios metodos, me me interesaría que el soft chekee automaticamente y se actualise solo.

Solo le pido ideas, o algun code concreto.

Saludos


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 15 Junio 2010, 03:07 am
Yo hace mucho hize un actualizador con el modulo Csocketmaster y es el que uso actualmente para actualizar el juego que hize en vb. El juego es Online y hasta ahora el actualizador lo hace muy bien. Acomodare el codigo del actualizador y comentare el codigo para postearlo y aportarlo a la comunidad.

PD: Pueden ver el juego en www.novaweb.ve.tc o www.novaweb.megabyet.net


Título: Re: Aplicación Actualizable
Publicado por: bomba1990 en 15 Junio 2010, 03:51 am
hola, se que es un poco fuera del post, pero esta bien tu pagina, voy a descargar el juego para robarlo. Felicitaciones.


Título: Re: Aplicación Actualizable
Publicado por: e500 en 15 Junio 2010, 05:53 am
Yo hace mucho hize un actualizador con el modulo Csocketmaster y es el que uso actualmente para actualizar el juego que hize en vb. El juego es Online y hasta ahora el actualizador lo hace muy bien. Acomodare el codigo del actualizador y comentare el codigo para postearlo y aportarlo a la comunidad.

PD: Pueden ver el juego en www.novaweb.ve.tc o www.novaweb.megabyet.net

Muchas gracias, esperaré el codigo con ansiedad!!  ;-)

Saludos


Título: Re: Aplicación Actualizable
Publicado por: BlackZeroX en 15 Junio 2010, 07:01 am
Yo hace mucho hize un actualizador con el modulo Csocketmaster y es el que uso actualmente para actualizar el juego que hize en vb. El juego es Online y hasta ahora el actualizador lo hace muy bien. Acomodare el codigo del actualizador y comentare el codigo para postearlo y aportarlo a la comunidad.

PD: Pueden ver el juego en www.novaweb.ve.tc o www.novaweb.megabyet.net

Muchas gracias, esperaré el codigo con ansiedad!!  ;-)

Saludos

Eso que te dijeron es mas EGO y SPAM publicitario!¡, por lo escrito!¡, no creo que te de codigo!¡.

Si deseas EJEMPLOS, PROYECTOS HECHOS esta la pagina de PSC (http://www.planet-source-code.com/vb/default.asp)

Dulce Infierno Lunar!¡.


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 16 Junio 2010, 01:46 am
Yo hace mucho hize un actualizador con el modulo Csocketmaster y es el que uso actualmente para actualizar el juego que hize en vb. El juego es Online y hasta ahora el actualizador lo hace muy bien. Acomodare el codigo del actualizador y comentare el codigo para postearlo y aportarlo a la comunidad.

PD: Pueden ver el juego en www.novaweb.ve.tc o www.novaweb.megabyet.net

Muchas gracias, esperaré el codigo con ansiedad!!  ;-)

Saludos

Eso que te dijeron es mas EGO y SPAM publicitario!¡, por lo escrito!¡, no creo que te de codigo!¡.

Si deseas EJEMPLOS, PROYECTOS HECHOS esta la pagina de PSC (http://www.planet-source-code.com/vb/default.asp)

Dulce Infierno Lunar!¡.


Me sorprenden comentarios como este viniendo de un user como BlackZeroX▓▓▒▒░░ -.-!!

Si mas aqui el code prometido, es el que yo uso y hasta ahora no me ha fallado.

El code me parece que es simple, todo se hace desde el Form Load:

Código
  1. Private Sub Form_Load()
  2.  
  3. 1         On Error GoTo Form_Load_Error
  4.  
  5. 2         Call RegisterComponent(App.Path & "\unzip32.dll", DllRegisterServer)
  6.  
  7. 3         TempUpdateList = App.Path & "\updatelist.txt"     ' Archivo que guarda la informacion de los archivos actualizados
  8. 4         TempFileList = App.Path & "\filelist.txt"         ' Donde seran almacenados los archivos actuales
  9.  
  10. 5         If Command = "GenerateUpdateList" Then
  11. 6             If mArchivos.ArchivoExiste(App.Path & "\updatelist.txt") Then Call mArchivos.BorrarArchivo(App.Path & "\updatelist.txt")
  12. 7             Call Generate_FileList(App.Path, 1, App.Path & "\updatelist.txt", HostUrl)
  13. 8             MsgBox "Listo"
  14. 9             End
  15. 10        End If
  16.  
  17. 11        If mArchivos.ArchivoExiste(TempUpdateList) Then mArchivos.BorrarArchivo TempUpdateList
  18. 12        If mArchivos.ArchivoExiste(TempFileList) Then mArchivos.BorrarArchivo TempFileList
  19. 13        If mArchivos.ArchivoExiste(App.Path & "\updatelist.zip") Then mArchivos.BorrarArchivo App.Path & "\updatelist.zip"
  20. 14        If mArchivos.ArchivoExiste(App.Path & "\updatelist.txt") Then mArchivos.BorrarArchivo App.Path & "\updatelist.txt"
  21.  
  22. 15        Set Download = New CDownload
  23.  
  24. 16        Me.Show
  25.  
  26. 17        If Descargar_Updatelist = True Then               ' Descarga el Updatelist
  27. 18            Call Generar_Lista_De_Archivos                ' Genera la lista de archivos
  28. 19            Call Comprobar_Actualizaciones(App.Path)      ' Compara archivos en busca de actualizaciones
  29. 20            Call Descargar_Actualizaciones                ' Descargar Actualizaciones
  30. 21            Call SetStatus("Actualizacion Completa...")   ' Establece el Mensaje de que se completo todo
  31. 22            cmdAceptar.Enabled = True                     ' Activa el mensaje para activar la aplicacion Principal
  32. 23        Else
  33. 24            Call SetStatus("Fallo al Tratar de Actualizar...")    ' Fallo la actualizacion.
  34. 25        End If
  35.  
  36. 26        Exit Sub
  37.  
  38. Form_Load_Error:
  39.  
  40. 27        MsgBox "Error " & Err.Number & " (" & Err.Description & ") En La Linea Nº " & Erl & " Del Procedimiento Form_Load del Formulario frmDownloader", vbCritical + vbOKOnly, "Error"
  41.  
  42. End Sub

Todo esta en el zip.

En el form Principal debemos espesificar la URL del sitio en la parte de declaraciones, esta URL sera el host donde esta alojado el archivo updatelist.zip que contiene el updatelist.txt. Este archivo contiene la informacion de los archivos actualizados.

Lo primero que hace el programa es descargar el archivo updatelist.zip lo descomprime y carga el updatelist.txt, posterior a eso el programa genera una lista con los archivos del directorio de la aplicacion. Luego el programa compara los archivos del updatelist.txt (Archivos actualizados) con la lista de archivos generada (Archivos de la carpeta de la aplicacion) y los agrega a la lista de archivos a actualizar.

Por ultimo se llama a la funcion Descargar_Archivos que se encargara de descargar todos los archivos hasta actualizarlos todos. Una vez finalizado todo entonces se activa el boton aceptar para activar la otra aplicacion o cualquier otra cosa que se quiera colocar hay.

PD: Para Generar la lista de archivos actualizados el actualizador debe estar en la misma carpeta de la aplicacion actualizada, se ejecuta la aplicacion con el parametro GenerateUpdateList y generara el archivo updatelist.txt, este archivo debera comprimirse y subirse al host junto con los archivos actualizados. OJO en la carpeta de la aplicacion no deben ningun otro archivo que no sea el utilizado por la aplicacion exceptuando el programa que actualiza.

PD2: Es recomendable que los ejecutables exe, las dll o los ocx esten comprimidos en .zip para que no haya problemas al actualizar. Cuando se genera el updatelist.txt, debe reemplazarse la URL de descarga del exe, dll o ocx que se haya comprimido. OJO! no es obligatorio hacerlo solo que algunos servidores no admiten la descarga de ejecutables por seguridad.

Ejemplo: Genere el archivo updatelist.txt lo abro y estan todas las lineas de los archivos a actualizarse, si mi aplicacion principal se llama Programa.exe entonces debo buscarlo y ponerle Programa.zip:

La Linea aparece asi:
"\updater.exe",176128,"13be50d187646260f165276a38c8d2d4","http://www.URL_DEL_SITIO.net/CARPETA_DE_ACTUALIZACIONES/updater.exe"

Cambiarla asi:
"\updater.exe",176128,"13be50d187646260f165276a38c8d2d4","http://www.URL_DEL_SITIO.net/CARPETA_DE_ACTUALIZACIONES/updater.zip"

Si hay algun error o alguna sugerencia para mejorar el code pues bienvenido sea.

(http://r.i.elhacker.net/cache?url=http://img541.imageshack.us/img541/7302/actualizador.jpg)

Descargar Source Code:
http://www.megaupload.com/?d=XSO26CMG (http://www.megaupload.com/?d=XSO26CMG)


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 16 Junio 2010, 02:15 am
El link de descargar esta el source.

PD: Perdon por el doble post.


Título: Re: Aplicación Actualizable
Publicado por: e500 en 16 Junio 2010, 02:19 am
Muchisimas gracias DarkMatrix. Lo voy a probar  ;-)

Saludos


Título: Re: Aplicación Actualizable
Publicado por: ckjones1 en 23 Julio 2011, 10:26 am
DarkMatrix gracias por eso, me has ayudado a mi tambien pero no entiendo bien la parte del Updatelist.. ese codigo de donde lo sacastes y para que sirve?
"\updater.exe",176128,"13be50d187646260f165276a38c8d2d4"


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 23 Julio 2011, 10:57 am
La parte updatelist se encarga de generar la lista de archivos actualizados. Me explico, la aplicacion consta de dos partes: La primera es el updatelist ( Lista de Actualizacion ) que se encarga de generar la lista de archivos mas actualizados y los guarda en un archivo. La segunda parte es la que comprueba la actualizacion de tu ejcutable y en caso de que no este sincronizada con el updatelist, entonces actualizara los archivos que no esten actualizados.


Título: Re: Aplicación Actualizable
Publicado por: ckjones1 en 26 Julio 2011, 03:59 am
Gracias por la respuesta .. pero eso ya lo entendi, el problema es que de donde sacastes los numeros , es decir, el codigo


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 27 Julio 2011, 04:26 am
176128 > tamaño en bytes del archivo
13be50d187646260f165276a38c8d2d4 > MD5 del archivo ( Lo utilizo para comprobar si dos archivos son iguales o no. )

Durante la actualizacion el actualizador comprueba el archivo de la carpeta del programa con el de la informacion de actualizacion y si son diferentes entonces descarga ese archivo.


Título: Re: Aplicación Actualizable
Publicado por: marisagirl en 6 Agosto 2011, 19:18 pm
me baje el ejemplo y esta muy completo,solo que me pasa algo raro :S

Cuando me actualiza los datos,los descarga aunque ya esten en el equipo.
Asique cada vez que doy al boton me los descarga u.u

Como puedo solventar esto?¿

Gracias,besitos


Título: Re: Aplicación Actualizable
Publicado por: ckjones1 en 7 Agosto 2011, 04:10 am
Otra cosa mas.... como generas ese MD5??? :P :P :P :P :P :P


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 7 Agosto 2011, 06:01 am
PD: Para Generar la lista de archivos actualizados el actualizador debe estar en la misma carpeta de la aplicacion actualizada, se ejecuta la aplicacion con el parametro GenerateUpdateList y generara el archivo updatelist.txt, este archivo debera comprimirse y subirse al host junto con los archivos actualizados. OJO en la carpeta de la aplicacion no deben ningun otro archivo que no sea el utilizado por la aplicacion exceptuando el programa que actualiza.


Título: Re: Aplicación Actualizable
Publicado por: marisagirl en 7 Agosto 2011, 08:55 am
el mio es asi

"\prueba.txt",84,"D2678F20E93CE1CF82D57D3796163877","http://prueba.net/prueba.txt"
"\prueba.dll",149,"ED9A37477F84D6D2BF5B7DB1DF1920F5","http://prueba.net/prueba.dll"

ese archivo de texto llamado updatelist lo comprimo y lo subo al server.despues el programa lo descarga y me baja los archivos,hasta ahi todo bien.Pero el problema es que si le vuelvo a abrir me vuelve a bajar lo mismo :S
Asique nose como hacer para que los compruebe y no los baje si ya estan


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 8 Agosto 2011, 10:20 am
Te aseguraste de que subiste esos mismos 2 archivos a la web y de que los esta reemplazando bien?


Título: Re: Aplicación Actualizable
Publicado por: marisagirl en 8 Agosto 2011, 11:33 am
subi esos mismos archivos
y lo que hace es bajarmelos,hasta ai todo bien,pero si vuevlo a abrirlo me los vuelve a bjar de nuevo


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 8 Agosto 2011, 18:48 pm
Si vuelve a bajar los archivos cada vez que inicia la aplicacion es porque no se estan descargando bien los archivos... comprueba que los archivos que se descargan son correctos y que coinciden con los que subiste al servidor de actualizacion.


Título: Re: Aplicación Actualizable
Publicado por: marisagirl en 8 Agosto 2011, 18:59 pm
eso ya lo ice varias veces.
los archivos son exactamente iguales y con mismo md5


Título: Re: Aplicación Actualizable
Publicado por: AlxSpy en 9 Agosto 2011, 01:19 am
prueba agregandole a los archivos un numero de version , el programa deberia verificar la version de los archivos que tiene entu pc con la que hay disponible para descargar, si son la misma no hace nada, pero si la version a descargar es superior pues descarga esa nueva version.


Título: Re: Aplicación Actualizable
Publicado por: marisagirl en 9 Agosto 2011, 09:11 am
y como le indico eso?


Título: Re: Aplicación Actualizable
Publicado por: AlxSpy en 9 Agosto 2011, 18:55 pm
podrias hacer que se descargue otro archivo que contendria la version.


Título: Re: Aplicación Actualizable
Publicado por: mixtoconhuevo en 17 Junio 2012, 22:15 pm
Hola DarkMatrix:

Serías tan amable de subir a internet el ejemplo que publicaste en este hilo? ya sabemos todos que megaupload dejo de funcionar hace un tiempo.


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 17 Junio 2012, 22:34 pm
Ok, buscare el codigo, lo mejorare un poco y hay lo subo.


Título: Re: Aplicación Actualizable
Publicado por: mixtoconhuevo en 17 Junio 2012, 23:09 pm
Muchas gracias en serio!! me va a ser de gran ayuda!!


Título: Re: Aplicación Actualizable
Publicado por: mixtoconhuevo en 20 Junio 2012, 19:25 pm
Hola DarkMatrix:

¿cuando podrá brindarme el ejemplo? estoy intentando por otros medios hacer una aplicación actualizable y que contenga un instalador, pero no lo consigo. Tengo cierta prisa la verdad en conseguir esto ya que me voy de plazo para la entrega de la aplicación que estoy desarrollando.

espero noticias suyas

Muchas gracias por adelantado.


Ya he visto que hay otro hilo, muchas gracias!!


Título: Re: Aplicación Actualizable
Publicado por: fervabi22 en 14 Junio 2013, 05:20 am
Hola a Todos esta Bueno el Tema pero ya no se puede descargar el archivo que tiene el codigo para descargar el ACtualizador en Linea de archivos

Alguien lo podria adjuntar nuevamente o enviarlo a mi correo: Fervabi@hotmail.com


Título: Re: Aplicación Actualizable
Publicado por: XresH en 14 Junio 2013, 05:32 am
Hola a Todos esta Bueno el Tema pero ya no se puede descargar el archivo que tiene el codigo para descargar el ACtualizador en Linea de archivos

Alguien lo podria adjuntar nuevamente o enviarlo a mi correo: Fervabi@hotmail.com

Está todo en el post no precisás bajar nada...

Saludos.


Título: Re: Aplicación Actualizable
Publicado por: fervabi22 en 14 Junio 2013, 15:12 pm
Hola XresH

En Realidad el archivo de DarkMatrix ya no existe por que MEGAUPLOAD ya no Existe  por lo tanto no se puede descargar el Codigo de DarkMatrix

Deberias de Leer XresH Antes de decir que esta Todo:

Hola DarkMatrix podrias subir nuevamente el archivo con el Codigo si  fueras tan amable.

Muchas Gracias de Antemano


Título: Re: Aplicación Actualizable
Publicado por: XresH en 14 Junio 2013, 18:32 pm
Hola XresH

En Realidad el archivo de DarkMatrix ya no existe por que MEGAUPLOAD ya no Existe  por lo tanto no se puede descargar el Codigo de DarkMatrix

Deberias de Leer XresH Antes de decir que esta Todo:

Hola DarkMatrix podrias subir nuevamente el archivo con el Codigo si  fueras tan amable.

Muchas Gracias de Antemano

Código:
    Private Sub Form_Load()
     
    1         On Error GoTo Form_Load_Error
     
    2         Call RegisterComponent(App.Path & "\unzip32.dll", DllRegisterServer)
     
    3         TempUpdateList = App.Path & "\updatelist.txt"     ' Archivo que guarda la informacion de los archivos actualizados
    4         TempFileList = App.Path & "\filelist.txt"         ' Donde seran almacenados los archivos actuales
     
    5         If Command = "GenerateUpdateList" Then
    6             If mArchivos.ArchivoExiste(App.Path & "\updatelist.txt") Then Call mArchivos.BorrarArchivo(App.Path & "\updatelist.txt")
    7             Call Generate_FileList(App.Path, 1, App.Path & "\updatelist.txt", HostUrl)
    8             MsgBox "Listo"
    9             End
    10        End If
     
    11        If mArchivos.ArchivoExiste(TempUpdateList) Then mArchivos.BorrarArchivo TempUpdateList
    12        If mArchivos.ArchivoExiste(TempFileList) Then mArchivos.BorrarArchivo TempFileList
    13        If mArchivos.ArchivoExiste(App.Path & "\updatelist.zip") Then mArchivos.BorrarArchivo App.Path & "\updatelist.zip"
    14        If mArchivos.ArchivoExiste(App.Path & "\updatelist.txt") Then mArchivos.BorrarArchivo App.Path & "\updatelist.txt"
     
    15        Set Download = New CDownload
     
    16        Me.Show
     
    17        If Descargar_Updatelist = True Then               ' Descarga el Updatelist
    18            Call Generar_Lista_De_Archivos                ' Genera la lista de archivos
    19            Call Comprobar_Actualizaciones(App.Path)      ' Compara archivos en busca de actualizaciones
    20            Call Descargar_Actualizaciones                ' Descargar Actualizaciones
    21            Call SetStatus("Actualizacion Completa...")   ' Establece el Mensaje de que se completo todo
    22            cmdAceptar.Enabled = True                     ' Activa el mensaje para activar la aplicacion Principal
    23        Else
    24            Call SetStatus("Fallo al Tratar de Actualizar...")    ' Fallo la actualizacion.
    25        End If
     
    26        Exit Sub
     
    Form_Load_Error:
     
    27        MsgBox "Error " & Err.Number & " (" & Err.Description & ") En La Linea Nº " & Erl & " Del Procedimiento Form_Load del Formulario frmDownloader", vbCritical + vbOKOnly, "Error"
     
    End Sub

Yo lo hice funcionar con eso, si tu capacidad no te dá, entonces no digas cosas que no son.

Saludos.


Título: Re: Aplicación Actualizable
Publicado por: fervabi22 en 14 Junio 2013, 20:18 pm
De Verdad que eres un Novato. XresH

Bueno de Todas Formas te digo que deberias ver el siguiente post
http://www.codeproject.com/Articles/19623/Adding-automatic-updates-to-your-program-Part-1

No hables cosas que no sabes antes de preguntar

Att


Título: Re: Aplicación Actualizable
Publicado por: raul338 en 15 Junio 2013, 03:28 am
Dejen el flame para otros lugares. No inciten a la discusion que no sirve de nada...

@XresH: fervabi22 no esta pidiendo una tarea, esta pidiendo si alguien puede volver a subir el source que ya no esta online.

El código que figura en el post principal es un ejemplo de como usarlo, no es el código entero (si te fijas, hay funciones y el modulo mArchivos que falta, eso no compila ni en pedo)

Si alguien tiene el source y lo puede subir sera bienvenido. Yo tengo una versión muy modificada por mi que dudo que funcione, pero si nadie lo sube en un par de dias lo reviso y veo si lo subo...


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 16 Junio 2013, 02:53 am
He modificado un poco el source y agregue un archivo Leeme.txt, donde explica un poco el funcionamiento del programa y un ejemplo de como usarlo. Aqui esta el source resubido: http://www.multiupload.nl/YI6IVZ4T42 espero que les ayude :P

Nota: Deben modificar el archivo config.ini y agregar la URL del servidor donde alojaran sus archivos.

Aqui un video de como podrian utilizarlo:

GxqwSBEcudY

Saludos ^^,


Título: Re: Aplicación Actualizable
Publicado por: zetaperu en 2 Septiembre 2013, 21:12 pm
Amigo, me es interesante este módulo para personalizarlo, podrias subirlo a mediafire u otro hosting actual.

Gracias!


Título: Re: Aplicación Actualizable
Publicado por: zetaperu en 2 Septiembre 2013, 21:15 pm
Ya vi esto, no habia revisado la página 3


Gracias x compartir!


Título: Re: Aplicación Actualizable
Publicado por: DarkMatrix en 3 Septiembre 2013, 15:00 pm
Aqui esta el link amigo: http://www.mediafire.com/download/vt8xrnm38zn8a14/Actualizador_Source.rar


Título: Re: Aplicación Actualizable
Publicado por: rapbyone en 25 Septiembre 2013, 16:12 pm
muchas gracias por compartir el archivo amigo  :D