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.netMuchas 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
PSCDulce 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:
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
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"