Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Crear instalador con Inno Setup (https://www.clubdelphi.com/foros/showthread.php?t=91208)

Angel.Matilla 02-12-2016 10:59:35

Crear instalador con Inno Setup
 
1 Archivos Adjunto(s)
Ya sé que este tema ha sido tratado con extensión en el foro pero no acabo de enterarme como funciona. Toda la vida he usado InstallShield, que venía con BCB 5. Era cómodo porque de forma automática situaba los diversos ficheros en las carpetas que le correspondían; ya sé que la solución "bestia" es ponerlo todo en la carpeta en la que se copie la aplicación, pero no me gusta porque puede terminar con un montón de copias de librerias/archivos similares en distintas ubicaciones del PC.

He estado leyendo bastantes de los hilos que hay sobre este tema pero en todos los que he visto no he sido capaz de comprender como hacer para que el instalador coloque los distintos ficheros en donde yo quiera.

Por ejemplo. Tengo un fichero de un instalador (fichero adjunto) creado con InstallShield y veo que tiene diversas secciones, y vayan por delante mis disculpas ante la extensión del mensaje; no soy amigo de este tipo de cosas porque despistan de la consulta:
Cita:

[InstallShield Wizard]
...

[VisualDesign]
AppName=Colegios
AppExe=[Program Files]\Colegios.exe
AppExeFile=D:\Colegios\Colegios.exe
Version=1.0
Company=

[Types]

[Components]

[Groups]
...
Group1Name=Program Files
Group1Dir=<INSTALLDIR>
Group1Update=0
Group1TargetOS=-1
Group1File1=D:\Colegios\Colegios.exe
Group1File2=...
Group1File17=C:\WINDOWS\system32\teeui50.bpl
...
Group2Size=7808738
Group2Files=28
Group2Auto=101
Group2ID=39001
Group2Name=BDE/IDAPI Files
Group2Dir=<ProgramFilesDir>\Archivos comunes\Borland Shared\BDE
Group2Update=-1
Group2TargetOS=-1
Group2File1=C:\Archivos de programa\Archivos comunes\Borland Shared\BDE\idapi32.dll
...
Group3Size=6080
Group3Files=1
Group3Auto=98
Group3ID=38998
Group3Name=BDE/IDAPI CNF File
Group3Dir=<ProgramFilesDir>\Archivos comunes\Borland Shared\BDE
Group3Update=-1
Group3TargetOS=-1
Group3File1=C:\Archivos de programa\InstallShield\InstallShield Express for C++Builder 5\redist\IDAPI32.CFG
...
Group4Size=7798272
Group4Files=12
Group4Auto=58
Group4ID=38958
Group4Name=System Files - WinSysDir
Group4Dir=<WINSYSDIR>
Group4Update=-1
Group4TargetOS=-1
Group4File1=C:\WINDOWS\system32\BDEADMIN.CPL
Group4File2=C:\Instalador Builder\vcl50.bpl
...
Group5Size=7808738
Group5Files=28
Group5Auto=101
Group5ID=39001
Group5Name=BDE/IDAPI Files
Group5Dir=<ProgramFilesDir>\Common Files\Borland Shared\BDE
Group5Update=-1
Group5TargetOS=-1
Group5File1=C:\Archivos de programa\Archivos comunes\Borland Shared\BDE\idapi32.dll
...
Group6Size=6915
Group6Files=1
Group6Auto=98
Group6ID=38998
Group6Name=BDE/IDAPI CNF File
Group6Dir=<ProgramFilesDir>\Common Files\Borland Shared\BDE
Group6Update=-1
Group6TargetOS=-1
Group6File1=C:\Archivos de programa\Archivos comunes\Borland Shared\BDE\IDAPI.CFG
Group6File1Auto=98

[Sequence]
...

[RegEntries]
...

[Registry]

[Icons]

[Autoexec]
...

[CopyToFloppy]
...

[ISObjectIDs]
...

[Uninstall]
UserUninstall=0
Las primeras etiquetas ([InstallShield Wizard], [VisualDesign], [Types] y [Components]) creo que las tengo claras: parámetros para crear el instalador, aspecto del mismo, tipo de instalación y grupos de los que sacar (o instalar) los ficheros necesarios. Pero a partir de ahí me pierdo.

Me explico:
La etiqueta [Groups] tiene una serie de definiciones (GroupxSize, GroupxFiles, etc. donde x es 1, 2...) y luego una lista (GroupxFile1, GroupxFile2...). Por lo que veo en cada una de estas entradas GroupxFiley se indica dónde esta ubicado el fichero necesario y mi pregunta es: la carpeta en la que se ha de instalar ¿es la que se indica en GroupxDir?

Creo que es ahí donde está el meollo del instalador pero no acabo de enterarme.

Casimiro Notevi 02-12-2016 12:54:01

Innosetup tiene un asistente que te va guiando paso a paso para crear tu instalador.
No he entendido el problema que tienes.

cloayza 02-12-2016 13:40:27

Puedes utilizar Inno Script Studio para generar tus instaladores, este trabaja con InnoSetup.

Es de fácil uso y muy buena herramienta en mi humilde opinión...

Saludos cordiales

Casimiro Notevi 02-12-2016 15:37:31

Cita:

Empezado por cloayza (Mensaje 511429)
Puedes utilizar Inno Script Studio para generar tus instaladores, este trabaja con InnoSetup.
Es de fácil uso y muy buena herramienta en mi humilde opinión...
Saludos cordiales

Yo uso ese :)

Angel.Matilla 02-12-2016 17:44:21

Gracias a los dos. Es evidente que además de poner la pregunta en el foro sigo "incordiando" y, primero, he descubierto la aplicación que indicáis y segundo he visto como definir las carpetas. Muchísimas gracias por vuestra ayuda y mis disculpas por ser tan paliza. :o

Angel.Matilla 02-12-2016 19:18:55

Perdonad por este segundo mensaje; no había leído tu respuesta Casimiro. El problema es que no me parece muy lógico copiar TODO en la carpeta en que se instale la aplicación y, a partir del IWZ generado con InstallShield, no acabo de comprender dónde se graba cada fichero en la instalación. Tomando lo que puse antes:
Cita:

[Groups]
...
Group1Name=Program Files
Group1Dir=<INSTALLDIR>
...
Group1File1=D:\Colegios\Colegios.exe
Group1File2=C:\Instalador Builder\bc520rtl.dll
...
Group2Name=BDE/IDAPI Files
Group2Dir=<ProgramFilesDir>\Archivos comunes\Borland Shared\BDE
...
Group2File1=C:\Archivos de programa\Archivos comunes\Borland Shared\BDE\idapi32.dll
Group2File1Auto=101
Group2File2=C:\Archivos de programa\Archivos comunes\Borland Shared\BDE\idr20009.dll
Group2File2Auto=101
...
Entiendo que, por ejemplo, ese valor D:\Colegios\Colegios.exe que tiene Group1File1 es de dónde se toma el fichero origen, pero los ficheros que están identificados con Group1File... ¿se instalan en el grupo definido en Group1Dir, en este caso INSTALLDIR, etc.? Esa es la duda fundamental que tenía. Por lo demás después de andar hurgando con Inno Scrip Studio ya vi que se pueden personalizar las carpetas en las que se coloca cada uno de los ficheros.


La franja horaria es GMT +2. Ahora son las 15:52:16.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi