 |
Club Builder Foro de C++Builder en español
|
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Touchsoftwares Master


Registrado: 16 Dic 2002Mensajes: 869Ubicación: MEXICO Playa del Carmen
|
Publicado: Sab 30 Dic, 2006 11:46 pm Asunto: AutoUpdate..quein se apunta?? cesar, leo etc etc |
|
|
Hacer un update que pueda actualizar el exe de un archivo web, algo asi como los antivirus.. alguiel tiene alguna idea de como empezar..
saluds y feliz año! _________________ Ing. Gabriel Góngora Navarrete
TouchSoftwares Inc
http://www.touchsoftwares.com |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Dom 31 Dic, 2006 5:57 am Asunto: |
|
|
La cosa es sencilla y un complicada a la vez, realmente este tipo de programas, usan la siguiente tecnica de programacion, un programa ejecutor y un programa donde reside las actualizaciones.
La parte sencilla, es realizar cada modulo de tu programa por aparte
1.- Generas el programa principal.
2.- Generas los modulos necesarios (forms y cosas por el estilo), pero
aqui tenemos el pero, cada uno de estos forms deben estar contenidos dentro de una DLL
La parte complicada, Es la creacion de los Formularios dentro de las DLL aun que dentro del foro existe algo de informacion, y con algo de respuestas que el Sr Ian Marteens ha platicado conmigo en base a una pregunta de que eran mejor si las Dll's o los BPK o BPL, que son codigos encerrados dentro de los ejecutables etc etc ( me estoy desviando... jeje)
la cosa es regresar a la parte sencilla,
1.- tienes un programa ejecutable con los menus necesarios para llamar a los "forms"
2.- cada uno de tus forms reside en una DLL, cuando actualices cualquiera de las DLL, con el nombre del archivo ejemplo
Clientes.DLL (05-02-1999) por el nuevo Clientes.DLL (01-01-2007)
lo que estas haciendo es cargar la nueva interface de Clientes.DLL pero solo con una llamada del programa principal.
sin que tengas que modificar el programa que lo llama
otro ejemplo, si vez a Norton SystemWorks, por mencionar este programa
te vas a dar cuenta de lo siguiente, si vas a la carpeta de C:\Archivos de programa\Norton SystemWorks\Norton Utilities, notas que los ejecutables con mucho sobre pasan los 100 kb esto es risorio para un EXE que realiza tantas actividades, pues bien lo que ellos son, son los cargadores de las DLL
asi que cuando Norton Actualiza sus Definciones Etc etc, lo que esta haciendo es actualizar sus Dll's, ahora bien por que el tamaño de menos de 100 kb, por que cualquiera que haga virus, sabe que no puede infectar un archivo que sea menor que el tamaño del virus. jeje norton o los que colaboran con norton tambien lo saben.
En esta tecnica existe el inconveniente que el programa Principal, casi nunca se puede actualizar, a menos que se compre una licencia nueva. lo que se actualiza son los modulos que el programa a travez de los menus, carga en memoria, como las Dll's.
Saludos. esta es mi idea, pero si puedo ahondar mas adelante, ten por seguro que lo hare
pd: por lo de la transferencia, eso no es problema, ya esta resuelto a travez de un programa realizado por este escritor para transferir archivos de hasta 1 giga por la red.
Si alguien tiene otra manera de pensar, es bien venida. _________________
 |
|
| Volver arriba |
|
 |
dobermannmx Master


Registrado: 30 Ago 2006Mensajes: 191Ubicación: Zapopan, Jal. - México
|
Publicado: Lun 01 Ene, 2007 7:44 pm Asunto: Auto Update |
|
|
Hola Gabriel, creo que lo más difícil es el diseño de tu aplicación, ya que como dice César puede ser tan fácil como solo actualizar uno o varios archivos dependientes de tu aplicación pero separados del executable o realizar un programa aparte que sea el que actualice tu executable, pero depende que esquema de actualizaciones decidas implementar. El resto no es complicado ya que el programa actualizador puede ser un simple FTP que se conecte a un servidor web y baje el o los archivos requeridos.
Saludos _________________ ISC
Dobermannmx |
|
| Volver arriba |
|
 |
alfredo Master

Registrado: 13 Oct 2003Mensajes: 246Ubicación: Valencia Venezuela
|
Publicado: Jue 04 Ene, 2007 1:00 am Asunto: |
|
|
Saludos y Feliz Año!
El modo de actualizacion dependera de como hayas diseñado tu aplicacion,
si toda esta reside en un .exe solo hay dos posibilidades: el remplazo total o el "Parcheo", el reemplazo total es simple, substituyes todo el .exe por uno nuevo, el parcheo es hacer cirugia al exe antiguo, extirpar las partes no deseadas y colocar en su lugar los trozos actualizados, esto solo tiene sentido cuando el tamaño del ejecutable es muy grande y sale mas simple y economico en recursos.
Si diseñaste algo al estilo Norton, es decir un menu que llama a Dllls, solo reemplazaras las requeridas, esto es bastante practico pero a fin de cuentas siempre estaras reemplazando codigo binario.
Hay otra alternativa, diseñar tu programa para que reaccione en base a Scripts, esta es mas dificil y requiere un buen enfoque desde el principio pero es la mas economica en manejo de recursos y bien pensada e implementada puede ser la mas potente y menos vulnerable. |
|
| Volver arriba |
|
 |
Touchsoftwares Master


Registrado: 16 Dic 2002Mensajes: 869Ubicación: MEXICO Playa del Carmen
|
Publicado: Sab 07 Jul, 2007 11:04 pm Asunto: |
|
|
Alguan idea para iniciar el protocolo de lectura del archivo en un ftp? _________________ Ing. Gabriel Góngora Navarrete
TouchSoftwares Inc
http://www.touchsoftwares.com |
|
| Volver arriba |
|
 |
|
|
No puedes publicar temas nuevos en este foro No puedes responder a temas en este foro No puedes editar tus mensajes en este foro No puedes borrar tus mensajes en este foro No puedes votar en las encuestas de este foro
|
© 2002–2026 Club Builder · Funciona con phpBB.
|