Ver Mensaje Individual
  #16 (permalink)  
Antiguo 26/03/2007, 21:20
makeitslow
 
Fecha de Ingreso: enero-2007
Ubicación: Cochabamba - Bolivia
Mensajes: 346
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: Hacer Un Setup?

Gracias Xpiderman por tu comentario positivo y alentador, definitivamente el INNO tiene un sin fin de opciones, podemos manipular el registro del windows a nuestro antojo de manera interactiva, ademas que tambien podemos modificar los INI y crear los nuestros propios, sin mencionar que tiene soporte para programacion en Visual y Pascal.

Por cierto ya averigue como mostrar mensajes durante nuestra instalacion (muy diferente a mostrar ventanas de mensajes)... solo tenemos que definir el parametro: StatusMsg: en donde queramos ver el mensaje:

[Run]
[Components]
[UninstallRun]
.
.
.
Etc


Por ejemplo:

Código:
[Run]
Filename: "{app}\wrar362es.exe"; Description: "{cm:LaunchProgram,wrar362es}"; StatusMsg: "Instalando WinRar 3.62 (Español)."; Flags: skipifdoesntexist
Nos muestra el mensaje "Instalando WinRar 3.62".

A modo de comentar a muy grandes rasgos, les dejo la estructura del archivo a compilar para hacer el instalador:

Código:
[Setup] 
En esta seccion se definen las cosas basicas de la instalacion de la aplicacion. Dentro de ella se encuentran las siguientes secciones : 

AppName=Nombre de la aplicacion 
AppVerName=Version de la aplicacion 
AppPublisher=Autor de la aplicacion 
AppPublisherURL=Direccion web de la aplicacion 
AppSupportURL=Direccion web con el url de soporte de la aplicacion 
AppUpdatesURL=Direccion web con el url de actualizaciones de la aplicacion 
DefaultDirName=Directorio donde se instalara la aplicacion 
DefaultGroupName=Grupo/Carpeta donde seran instalados los iconos de la aplicacion en windows 
AllowNoIcons=Indica si se crean iconos de las aplicaciones una ves instaladas 
LicenseFile=Archivo de licencia a mostrar 
InfoBeforeFile=Archivo con la informacion inicial a mostrar antes de comenzar la instalacion 
InfoAfterFile=Archivo con la informcion final despues de haberse completado la instalacion 
OutputDir=Directorio donde quedara el archivo setup compilado 
OutputBaseFilename=Nombre del archivo de instalacion 
Compression=Metodo de compresion a usar durante el momento de creacion del archivo de instalacion 
SolidCompression=Indica el nivel de compresion al momento de crear el archivo de instalacion 

[Tasks] 
Indica las tareas a realizar durante el proceso de instalacion. 

[Files] 
Indica los archivos que deberan ser compilados y donde seran instalados. 

[INI] 
En esta seccion se indica si se desea ingresar alguna informacion al registro una vez finalizado el setup. 

[Icons] 
Define los accesos directos que se crearan durante la instalacion. 

[Run] 
Define todos los programas que se ejecutaran al momento de finalizar la instalacion. 

[UninstallDelete] 
Define todos los archivos que se deberan borrar cuando la aplicacion sea removida desde el pc. 

Para que el script funcione debe estar sintacticamente correcto. Luego se procede a la compilacion y testeo de nuestro instalador.
Y un pequeño ejemplo de SymphonyX (Un(a) colaborador(a) de un foro Amigo):

Código:
[Setup] 
AppName=Mi Aplicacion 
AppVerName=Mi Aplicacion Version 1.0.0.170 
AppPublisher=Mi Compañia 
AppPublisherURL=http://www.misitioweb.com 
AppSupportURL=http://www.misitioweb.com 
AppUpdatesURL=http://www.misitioweb.com 
DefaultDirName={pf}\miapp 
DefaultGroupName=Mi Compañia 
AllowNoIcons=yes 
LicenseFile=c:\proyectos\v1\instalador\licencia.txt 
InfoBeforeFile=c:\proyectos\v1\instalador\leame.txt 
InfoAfterFile=c:\proyectos\v1\instalador\historia.txt 
OutputDir=c:\proyectos\v1\instalador\output 
OutputBaseFilename=setup 
Compression=lzma 
SolidCompression=yes 

[Tasks] 
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked 
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked 

;Aqui instalo los archivos de mi aplicacion 
;{app} = Directorio destino de la instalacion 
;{sys} = Directorio system de windows 
;tambien podria usarse asi : {app}\ayuda 

[Files] 
Source: "c:\proyectos\v1\instalador\miapp.exe"; DestDir: "{app}"; Flags: ignoreversion 
Source: "c:\proyectos\v1\instalador\miapp.ini"; DestDir: "{app}"; Flags: ignoreversion 
Source: "c:\proyectos\v1\instalador\miapp.ocx"; DestDir: "{sys}"; Flags: regserver sharedfile ignoreversion 
Source: "c:\proyectos\v1\instalador\miapp.dll"; DestDir: "{sys}"; Flags: regserver sharedfile uninsneveruninstall 
Source: "c:\proyectos\v1\instalador\miapp.hlp"; DestDir: "{app}"; Flags: ignoreversion 

[INI] 
Filename: "{app}\miapp.url"; Section: "InternetShortcut"; Key: "URL"; String: "http://www.misitioweb.com/" 

[Icons] 
Name: "{group}\Mi Aplicacion"; Filename: "{app}\miapp.exe" 
Name: "{group}\{cm:ProgramOnTheWeb,Mi Aplicacion}"; Filename: "{app}\miapp.url" 
Name: "{group}\{cm:UninstallProgram,Mi Aplicacion}"; Filename: "{uninstallexe}" 
Name: "{userdesktop}\miapp"; Filename: "{app}\miapp.exe"; Tasks: desktopicon 
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\miapp"; Filename: "{app}\miapp.exe"; Tasks: quicklaunchicon 

;Una ves finalizado el setup preguntar si se desea ejecutar mi aplicacion 
[Run] 
Filename: "{app}\miapp.exe"; Description: "{cm:LaunchProgram,miapp}"; Flags: nowait postinstall skipifsilent 

;Archivos a eliminar al momento de remover mi aplicacion 
[UninstallDelete] 
Type: files; Name: "{app}\miapp.url"
Como veran, para implementar su instalador, solo tienen que reemplazar las direcciones y nombres de archivos de manera intuitiva que esta muy facil. Revisando la documentacion, veran que pueden colocar imagenes, colores y estilos personalizados a todo el entorno del instalador, este que esta aqui es el mas sencillo y simple que se podria hacer, pero muy efectivo.