Guardar datos portables xD

Tus experiencias con la informática, o fuera de la informática
Responder
Avatar de Usuario
gna08
Hacker del Foro
Mensajes: 379
Registrado: 27 Sep 2008, 18:51
Ubicación: Cordoba, Argentina

Guardar datos portables xD

Mensaje por gna08 »

HOla como les va.. pongo este tema para saber k opinan sobre a la hora de crear un portable.. el k sea... puedan guardarse datos sobre este.. supongamos lo siguiente.. el CCleaner portable.. podemos guardar datos en un INI... y digamos k yo creo un portable y donde este lleve tambien kiero llevar mis configuraciones... pero yo kiero tener solo UN archivo unico. para no tener k llevar el ini.. obvio k puedo generar el ini desde au3 del metodo k sea.. pero si yo kisiera k cuando lleve el .exe con todo adentro a otra sigan las configuraciones k anteriormente modificadas..
Creo k hize un lio xD...
el tema es k kiero llevar datos guardar configuraciones sin archivos externos como un INI o una key en el registro..
Manejarme solo con el exe unico..
Se me ocurren ciertas ideas.. pero kisiera escuchar alguna si se les ocurre..
Saludos :smt023
Aunk no m Buskes, Seguro m enkontras!
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Guardar datos portables xD

Mensaje por Chefito »

Recuerda que siempre puedes añadir información adicional al final de un fichero exe sin que le afecto. Para hacer esto tienes que abrirlo en modo binario y trabajar con el en este modo.

Luego puedes recuperarla.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Avatar de Usuario
gna08
Hacker del Foro
Mensajes: 379
Registrado: 27 Sep 2008, 18:51
Ubicación: Cordoba, Argentina

Re: Guardar datos portables xD

Mensaje por gna08 »

Chefito escribió:Recuerda que siempre puedes añadir información adicional al final de un fichero exe sin que le afecto. Para hacer esto tienes que abrirlo en modo binario y trabajar con el en este modo.

Luego puedes recuperarla.

Saludos.
sii pense en eso y tambien xq no usar el reshack para añadir datos. etc.. es una buena idea
Gracias :smt026
Aunk no m Buskes, Seguro m enkontras!
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: Guardar datos portables xD

Mensaje por Ximorro »

¿Por qué crees que no es tan buena idea usar un INI?
Coincido contigo en que para un portable cuantos menos archivos mejor, pero bueno, tampoco es estrictamente necesario que un portable sea un sólo archivo (que de todas maneras puedes distribuir en un único fichero comprimido).

Veo más cómodo el INI que meter los datos en el EXE por la portabilidad separada de datos de usuario y programa. Con un INI un ejecutable vale para varios usuarios, puedo pasar el EXE a otra persona ¡sin que se lleve mis datos con él! Puedo tener varios INI con configuraciones diferentes...
Además el INI es visible, y en mi opinión mejor que meter cosas en el registro. Creo que tener los datos en el EXE es algo intermedio entre el registro y un INI.
¿Y qué pasa cuando el portable está en un CD? :smt003

Por supuesto puede depender del tipo de programa, y lo de meter los datos en el EXE puede ser muy interesante en algunas ocasiones. Ni que decir tiene que cuando hagas un sistema así estaremos encantados de ver cómo lo haces. :smt002
No sé si habrá un problema con modificar un EXE que está en ejecución... quizás quede el archivo bloqueado ¿no?
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Guardar datos portables xD

Mensaje por Chefito »

Coincido contigo es que está muy bien utilizar un archivo ini para guardar información (para eso están no? :smt003 ).
Pero en otras ocasiones puede que te interese meter información dentro de un exe. Puedes meter hasta el archivo ini en el exe :smt002 . O cualquier otro archivo, incluso otro exe.
Si necesitas tener datos privados, pues los encriptas de alguna forma :smt002 .
Lo dicho, según las necesidades y lo que te quieras complicar la vida.
Ximorro escribió:¿Y qué pasa cuando el portable está en un CD?
Jejejeje, sí, eso sería un gran problema :smt005 . Tendrías que tratar cosas como esa en el código.
Ximorro escribió:Ni que decir tiene que cuando hagas un sistema así estaremos encantados de ver cómo lo haces.
Jajajajaja, yo ya lo hice hace tiempo :smt016 . Lo que pasa que no acabé el programa (para variar) y no lo colgé. Os acordais que iba ha hacer un programa estilo hacha para cortar archivos?, pues en el primer trozo metía la información de los cortes :smt002 . También tenía la opción de ejecutarlo a través de un ini :smt002 . A elegir.
Pues antes de hacer esto, hice pruebas para meter información, cortar archivos y volver a juntarlos, en varios tipos de archivos, y ninguno se corrompió. Todos funcionaron.
Ximorro escribió:No sé si habrá un problema con modificar un EXE que está en ejecución... quizás quede el archivo bloqueado ¿no?
Mmmmmm....yo ya intenté esto y creo que no pude :smt021 . Podía leerlo pero no modificarlo.
No se me bloqueaba, simplemente no me dejaba modificarlo. Las funciones que utilizé para intentarlo me daban siempre algún error de que no se podía modificar.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Avatar de Usuario
gna08
Hacker del Foro
Mensajes: 379
Registrado: 27 Sep 2008, 18:51
Ubicación: Cordoba, Argentina

Re: Guardar datos portables xD

Mensaje por gna08 »

Ximorro escribió: ¿Y qué pasa cuando el portable está en un CD? :smt003
Y bueno.. eso es lo demenos.. si de todas formas aun lleve un INI al lado de mi EXE en un CD. obvio k no sera modificable.. es exacatamente lo msimo.. exepto k en este no deberia de dar error. (es lo de menos esto es exacatamente lo mismo segun yo xD)
Chefito escribió:
Ximorro escribió:Ni que decir tiene que cuando hagas un sistema así estaremos encantados de ver cómo lo haces. :smt002
Jajajajaja, yo ya lo hice hace tiempo . Lo que pasa que no acabé el programa (para variar) y no lo colgé. Os acordais que iba ha hacer un programa estilo hacha para cortar archivos?, pues en el primer trozo metía la información de los cortes.
jejeje sii. yo hice algo tambien para krear archivos comprimidos propios.. y almacenar claves y datos cifrados en el mismo archivo donde seria casi imnposible detectar la mezcla.. siempre me parecio buena idea.. pero no del todo comoda pero util.. porsupuesto ;)
Ximorro escribió:No sé si habrá un problema con modificar un EXE que está en ejecución... quizás quede el archivo bloqueado ¿no?
Naa eso seria lo mas obvio y tonto de mi parte saltarme eso.. lo k pense antes fue. krear una herramienta externa k modifike los datos. y obvio k modificaria cuando el programa termine.. . osea. se abre el portable. Fileinstall la herramienta.. espero k termine de usar mi portable. y cuando cierro .. la herrienta se encarga de guardar los datos al portable y listo.. seria 2 archivos.. :smt033
Aunk no m Buskes, Seguro m enkontras!
Avatar de Usuario
Rupert.25
Hacker del Foro
Mensajes: 247
Registrado: 17 Jul 2007, 18:27

Re: Guardar datos portables xD

Mensaje por Rupert.25 »

Y que les parece recomprimir el archivo?

Hace tiempo quise hacerlo y me dí la idea.

Consiste en: Abrir el ejecutable y descomprimir el ini, Leérlo, y por ejemplo medir el peso. Al cerrar el programa, si el peso del ini es diferente al iniciar, que diga: "Se han detectado cambios en la configuracion." & @CRLF & "¿desea actualizarlo (reempaquetarlo)?"

Y luego se reempaqueta el archivo.

Es la idea :)
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: Guardar datos portables xD

Mensaje por Ximorro »

Chefito ¡tienes que acabar el programa del hacha! ¡además de útil como utilidad será una maravilla técnica para aprender AutoIT!
Sí, con bloqueado quería decir eso, bloqueado para escritura. Supongo que habrá que hacer algo como lo que dice gna08, con un programa dentro del programa... ¡es un caballo de Troya! ;-) Probablemente se podría hacer con un simple BAT, en realidad bastaría concatenar los datos al EXE con un COPY binario, creo que tal como funciona AutoIT puedes meterle lo que quieras al final que él ya encuentra bien el script y lo ejecuta sin problemas.

La idea de Rupert.25 de reempaquetar el comprimido es curiosa, ¿pero cómo se ejecutaría? directamente desde el programa de descompresión? ¿o el exe sería realmente un autodescomprimible?
Ojo que más que el peso del INI hay que mirar el contenido, si cambio un valor de 1 a 0 el peso es el mismo, ambos valores son de un carácter (un byte) pero son diferentes con lo que el INI ha cambiado. Mirar la fecha tampoco es buena idea porque al descomprimirlo las cambiará, o eso creo...

Que conste que no digo que sea mala idea meter datos en el EXE, pero que un INI lo veo más normal, dependerá de la aplicación, y conocer la técnica para hacerlo siempre es interesante.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Guardar datos portables xD

Mensaje por Chefito »

Me gusta las ideas que se proponen por aquí, ya que yo he tenido que intentar utilizar una de estas alguna vez :smt024 .

Recuerdo hace años que en vb queríamos borrar el propio programa. No es tan complicado como añadirle algo, pero el problema es el mismo.....que al estar abierto el win no te da acceso.

Como siempre, una de las soluciones fue con un comando de consola (creo que del). Se puso que justo antes de salirse del programa se ejecutase. Pero había un problema, y es que según la velocidad de cierre del programa y de carga del comando, unas veces lo borraba y otras no :smt016 .

En definitiva, según mi sabiduría (yo no llego a más), pienso lo que vosotros....hay que utilizar programas y comandos secundarios para hacer estas cosas. En muchos casos un archivo bat o vbs es muy util, ya que se pueden borrar sin problemas ellos mismos (creo recordar).

Estoy por proponer este tema en el foro de scripts para ver que soluciones le damos cada uno :smt003 . Se podría empezar por el borrado de un mismo programa y seguir con la inserción de datos en el propio exe (este último bastante más complicado).

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Avatar de Usuario
Rupert.25
Hacker del Foro
Mensajes: 247
Registrado: 17 Jul 2007, 18:27

Re: Guardar datos portables xD

Mensaje por Rupert.25 »

No es dificil la idea. Si usan el Winrar se darán cuenta que al abrir un documento comprimido (por ejemplo de Word) y lo modifican, al cerrar el Word, el WinRar les notificará que se ha modificado y pregunta si desean reempaquetarlo.

Ximorro, tiene razón al mencionar lo del peso. Yo lo había pensado con un antivirus portable, que checara el archivo de las firmas, si el peso fué modificado es por que se actualizó, y luego reempaquetarlo.

Se me ocurren unas ideas; por ejemplo:

1 - El ejecutable principal, estará dentro de otro, (un archivo autoextraible que ejecute al principal). Por ejemplo (vease a modo directorio):

Código: Seleccionar todo

-Archivo Exe Contenedor.
	-Archivo Exe principal
	-Archivo Ini
la idea es que el archivo contenedor, descomprima los dos en una carpeta temporal, y se cierre.
El programa "principal" revise las configuraciones del "Ini", y al cerrarse si fueron modificadas, que borre el exe "Contenedor", y lo vuelva a crear (o que simplemente lo modifique) con las nuevas configuraciones. Y despues de modificarlo, lo ejecute con el comando "/Limpiar" (puede esperar 2 segundos (o WinwaitClose), a q se cierre el "principal"). De esa manera el "Contenedor" borrará al "Principal" y al "Ini".

2 - El 1, es la única idea que tengo por el momento :D
Avatar de Usuario
XPyro
Profesional del Autoit
Mensajes: 542
Registrado: 04 Mar 2007, 10:12
Ubicación: México
Contactar:

Re: Guardar datos portables xD

Mensaje por XPyro »

Interesante tema, pensaba lo mismo antes pero no daba con el clavo y decidí crearlos como siempre los e echo, si se les ocurre una solución estaré agradecido por compartir el dato :smt005 :smt006
Imagen
Avatar de Usuario
Rupert.25
Hacker del Foro
Mensajes: 247
Registrado: 17 Jul 2007, 18:27

Re: Guardar datos portables xD

Mensaje por Rupert.25 »

Tengo ese concepto. Veré si por la noche programo un peuqñisimo script de Ejemplo.

Yo creo que si funciona!
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Guardar datos portables xD

Mensaje por Chefito »

Rupert.25 escribió:El programa "principal" revise las configuraciones del "Ini", y al cerrarse si fueron modificadas, que borre el exe "Contenedor", y lo vuelva a crear (o que simplemente lo modifique) con las nuevas configuraciones. Y despues de modificarlo, lo ejecute con el comando "/Limpiar" (puede esperar 2 segundos (o WinwaitClose), a q se cierre el "principal"). De esa manera el "Contenedor" borrará al "Principal" y al "Ini".
Esa es una de las ideas. Más o menos ya se ha comentado en otro post anterior. Tener un programa principal y otro auxiliar que revise cuando se cierra el programa principal para meter la información en el exe principal. No se necesitaría ningún ini.
Pero esto tiene otro problema. Quedaría el programa auxiliar en el temporar, ya que el no se puede borrar a si mismo.
A no ser que ejecute otra vez el programa principal de algún modo (por ejemplo como dices tú, con un parámetro) antes de cerrarse el programa auxiliar, y el programa principal borre al programa auxiliar. Funcionaria, pero no creeis que es un poco rollo y algo chapucero??? :smt021 .

Yo creo que tiene que haber otras formas más faciles y efectivas :smt024 .

He abierto un post en scripts para postear todos los códigos que se nos ocurra para poder hacer esto. A ver si al final sacamos algo en claro :smt003 .

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Avatar de Usuario
gna08
Hacker del Foro
Mensajes: 379
Registrado: 27 Sep 2008, 18:51
Ubicación: Cordoba, Argentina

Re: Guardar datos portables xD

Mensaje por gna08 »

Rupert.25 escribió:No es dificil la idea. Si usan el Winrar se darán cuenta que al abrir un documento comprimido (por ejemplo de Word) y lo modifican, al cerrar el Word, el WinRar les notificará que se ha modificado y pregunta si desean reempaquetarlo.

Ximorro, tiene razón al mencionar lo del peso. Yo lo había pensado con un antivirus portable, que checara el archivo de las firmas, si el peso fué modificado es por que se actualizó, y luego reempaquetarlo.

Se me ocurren unas ideas; por ejemplo:

1 - El ejecutable principal, estará dentro de otro, (un archivo autoextraible que ejecute al principal). Por ejemplo (vease a modo directorio):

Código: Seleccionar todo

-Archivo Exe Contenedor.
	-Archivo Exe principal
	-Archivo Ini
la idea es que el archivo contenedor, descomprima los dos en una carpeta temporal, y se cierre.
El programa "principal" revise las configuraciones del "Ini", y al cerrarse si fueron modificadas, que borre el exe "Contenedor", y lo vuelva a crear (o que simplemente lo modifique) con las nuevas configuraciones. Y despues de modificarlo, lo ejecute con el comando "/Limpiar" (puede esperar 2 segundos (o WinwaitClose), a q se cierre el "principal"). De esa manera el "Contenedor" borrará al "Principal" y al "Ini".

2 - El 1, es la única idea que tengo por el momento :D

me parece interesante esa idea.. pero al mismo tiempo medio incomodo recomprimir todoo. pero no deja de ser util e interesante :smt033 :smt038
k opinan de usar reshack ? :smt017
Aunk no m Buskes, Seguro m enkontras!
Avatar de Usuario
Rupert.25
Hacker del Foro
Mensajes: 247
Registrado: 17 Jul 2007, 18:27

Re: Guardar datos portables xD

Mensaje por Rupert.25 »

No creo que sea incómodo usando alguna UDF, con funciones automatizadas.

El reshacker me parece bien, creo que podría hacerlo. Antes he usado el programa de comandos del 7-Zip. Se peude copiar y distribuir pues es libre. Nada mas es un exe, y ejecutandolo con comando hace todo.
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: Guardar datos portables xD

Mensaje por Ximorro »

Me paso a contestar a la entrada que ha creado Chefito...
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
bath_hack
Hacker del Foro
Mensajes: 108
Registrado: 19 Sep 2008, 20:25

Re: Guardar datos portables xD

Mensaje por bath_hack »

el res hacker mas que nada sirve para cambiar los iconos, podrías crear un autorun, es decir un menu que esta en .exe pero tiene guardados los .exe que vos quieras y ahi es donde te fijas cual programa queres que corra o instalar, creo que a eso no se le dice autorun pero la idea se entendio :smt003 autorun maestro menu editor es bueno para hacer eso, no se como podrías crear un portable, necesitarias el .exe junto a su .dll ¿no es más facil buscar portables ya creados y unirlos todos en un mismo .exe (archivo ejecutable)?..no se, me parece que te complicas jeje, todo bien ,saludos.
Responder