I) Introducción

Este tutorial te permitirá seguir paso a paso la creación de un instalador para una aplicación que normalmente no es portable, y que modifica el registro del sistema al instalarse. A modo de ejemplo haremos portable el programa FlashGet utilizando las siguientes herramientas:

Portable Regshot (Descargar presionando AQUÍ)
AutoIt (Descargar presionando AQUÍ)

Nota: Si el programa posee un driver, no podrá ser hecho portable con este método.
Si el programa posee archivos en el directorio de Windows o en otros directorios del sistema, tampoco podrá ser hecho portable.
Si es necesario guardar una dll/ocx, tampoco podrá ser hecho portable.

Para aquellos que el registro del sistema y la programación les asusta, les recomiendo esta aplicación.


Hacer portable una aplicación con AutoIt

II) Etapa previa

Para conocer las claves modificadas o creadas en el registro del sistema al instalar FlashGet, debemos hacer una “imagen” del registro antes de la instalación y compararla al registro después de la instalación del programa. Para ello, utilizaremos el programa Regshot hecho portable por Framasoft.

portable Ejecuta Portable Regshot

hacer


descargas Dale clic al botón 1st shot: se efectuará una primera imagen del registro del sistema.

aplicacion Instala FlashGet

tuto Dale clic al botón 2nd shot: se efectuará la segunda imagen del registro.

autoit


Hacer portable una aplicación con AutoIt Luego dale clic al botón cOmpare.

Regshot generará un informe (en formato txt o html de acuerdo a la opción que se haya elegido):

portable


En la sección de claves añadidas (Key added) nota que aparecen varias claves empezando por HKU (HKEY_CURRENT_USER) y HKLM (HKEY_LOCAL_MACHINE).

hacer Luego abre el editor del registro: menú Inicio > Ejecutar > escribe regedit
descargas Luego dirígete a la clave HKEY_CURRENT_USER\Software\JetCar\:

aplicacion


tuto Haz clic sobre la clave y selecciona Exportar. En la ventana que aparece ponle como nombre portable.reg y haz clic en Guardar.

autoit


Hacer portable una aplicación con AutoIt Crear una nueva carpeta con el nombre “temp” en la carpeta donde se encuentra la clave exportada.

portable Copia la clave en la nueva carpeta “temp”

hacer Haz clic derecho sobre la clave copiada, selecciona Modificar y pon el símbolo “-“ delante de cada HKU:

descargas


aplicacion Guarda “portable.reg” luego cierra el bloc de notas.


tuto

III) Hacer portable la aplicación (creación del script)

Copia la carpeta de instalación del programa (por lo general se encuentra en "C:\Archivo de programa" en la carpeta donde pusiste “portable.reg” y modifica el nombre de la carpeta de la aplicación (en nuestro caso “FlashGet”) y ponle “App”

Ahora esto se complica un poco:
Habrá que hacer un script (con nuestro editor de texto favorito) y transformarlo luego en archivo ejecutable, utilizando Aut2Exe.

Este es el script estándar para portabilizar una aplicación con este método:

RunWait("App\appname.exe" [donde esta la pongan solamente )]
RunWait('regedit.exe /s /e "' & @ScriptDir & '\Portable.reg" "HKEY_CURRENT_USER\Software\JetCar"')
RunWait("regedit.exe /s Portable2.reg", @ScriptDir)


autoit En la segunda línea: en vez de "appname.exe" pon el nombre del ejecutable de la aplicación.

Hacer portable una aplicación con AutoIt En la tercera línea: cambia "HKEY_CURRENT_USER\Software\JetCar" con la clave del registro utilizada por la aplicación.

Guarda este script y por ejemplo ponle de nombre Portable_FlashGet.au3 (la extensión ".au3" es primordial).

Ahora vamos a convertir nuestro script en ejecutable: para ello, ejecuta Auto2exe, luego selecciona el script Portable_FlashGet.au3, cambia el directorio de destino para apuntar a la raíz del directorio donde has puesto "Portable.reg", y cambia eventualmente el icono. Haz clic en covert, y después de algunos segundos, el ejecutable estará creado.

Aun no hemos terminado: ahora debes modificar el nombre del archivo "Portable.reg" que se encuentra en “temp” y ponerle como nombre "Portable2.reg" > luego debes moverlo a la raíz de la aplicación portable:

portable


FUENTE