Tutorial InnoIDE

download Tutorial InnoIDE

of 16

Transcript of Tutorial InnoIDE

  • 5/25/2018 Tutorial InnoIDE

    1/16

    Creandoun Instalador con Inno Setup paraAplicaciones OpenDCL

    Este tutorial le mostrar cmo crear un instalador para su aplicacin OpenDCL de unamanera sencilla. El instalador es un archivoEXE, el cual los usuarios podrn descargarde internet, o tambin puede, desde luego,enviarlo por email. Le incluiremos sus archivos

    .ODCL y.LSP,y el Runtime de OpenDCL, e instalaremostodo en la computadora del

    usuario.

    El tutorial usaInno Setup 5, uninstalador gratuitoparaprogramas de Windowsescritopor JordanRussell. Lo puede descargaraqui. El paquete mas amigable para trabajar esispack-5.2.3.exe, el cual incluye Inno Setup y add-onsde otras compaaslas cualeshace a InnoSetup facil de usar. La herramienta ms util es ISTool, que es un editor descriptsque le facilita la vida al desarrollador.

    ISTool incluye un asistente, el cual nos ayudara empezar con algunas particularidadesennuestroscript.

    Figura1. El Asistente para Scripts de Inno Setup.

    http://www.jrsoftware.org/isdl.phphttp://www.jrsoftware.org/isdl.phphttp://www.jrsoftware.org/isdl.phphttp://www.jrsoftware.org/isdl.php
  • 5/25/2018 Tutorial InnoIDE

    2/16

    Figura2. Esta informacin se mostrar cuando se ejecute elSetupdel programa.

    Figura3. Aqui se decide la ruta de instalacin del programa en la computadora del usuario.

  • 5/25/2018 Tutorial InnoIDE

    3/16

    Figura4. Aqui podemos agregar nuestros archivos, de cualquier forma tambin lopodemos hacer en el editor de scripts. Para aplicaciones OpenDCL,podemos activarla casillaThe application doesnt have amain executable file(La aplicacin no tieneun archivo ejecutable principal).

    Figura5. Aqui seleccionamos algunas de las opciones del Men de Inicio de nuestraaplicacin.

  • 5/25/2018 Tutorial InnoIDE

    4/16

    Figura6. Aqui podemos agregar informacin para ayudar al usuario a configurar el programa. Earchivo de texto before installation(antes de la instalacin) es el lugar para dar instrucciones ac

    de como agregar la carpeta a la configuracin de AutoCAD.

    Figura7. Que idioma desea para el instalador?

  • 5/25/2018 Tutorial InnoIDE

    5/16

    Figura8. Esta informacin espara ayudar al desarrolladora incorporar los archivos que serncompiladosen setup EXE en su propia computadora. Esto no afectarel archivo resultante, soloes para su conveniencia. Es recomendable que use nombres de archivo distintivos para el archivoresultante, lo anterior evitar confusionescon otrosproyectos.

    Figura9. Accesos Rpidos para el desarrollador.

  • 5/25/2018 Tutorial InnoIDE

    6/16

    Figura10. Completado con exito!

    Figura11. El Script hecho por el Asistente de Inno Setup.

  • 5/25/2018 Tutorial InnoIDE

    7/16

    La Figura11 muestra exactamentelo que el asistente ha incorporado en nuestroscript. De hecho

    a estas alturas, debido a que nuestras aplicaciones contienen pocos archivos, casi hemos terminado

    Necesitamos agregar unas cuantas lineas entre las secciones[Languages] e[Icons]. A conti-

    nuacin tenemos algunas notas de lo que hay que hacer conInno Setup:

    No necesita especificar la ruta completa de sus archivossi se coloca elscript que esta escribiendo en lacarpeta de EntradaC:\Program Files\ISTool.

    Puede usarrutas relativasparano teclear tanto. Enotraspalabras, si usted crea

    una carpeta llamada lspfiles dentro deC:\Program Files\ISTool\Input,simplemente puede refererirse a ella comolspfiles en las secciones que vamos

    a crear.

    Lassecciones que estamos creandotienen nombres especialeslos no deben sercambiados. Sabr si lo hizo bien porque estos se pondrn en negritaautomatica-

    mente despus de que los teclee - no necesita hacer esto manualmente-.

    Laseccin [Files]contienelos trminos especiales Source:, DestDir: yFlagsDe nuevo estos deben usarse como se muestra aquipara que elcompilador losreconozca. Existen otros terminos,perono los usaremos en este ejemplo.

    En las secciones[Run]y[UninstallRun], usaremos las comillaspara entrar losparametros que necesitamos parapasaraMSIEXEC.EXE. Inno Setup requiereque usemos comillas() alrededor de toda la cadenadeparametros.Debido a la

    forma en queInno Setup digiere los espacios en los nombres de archivos, necesi-

    tamos usardoblecomillas()alrededor de los nombres de archivos que puedancontener espacios! Como el directorio de nuestra aplicacin, referenciadopor

    medio del nombre especial {app}, contienela cadenaProgram Files, necesi-tamos usar triple doble comillas en nuestra cadena de parametros. Sino tenemosexito al crear correctamente esta cadena, MSIEXEC no se ejecutar correctamente

    OK, a terminarla el cdigo teniendo en cuenta lo anterior.

    Despus de la lineaacerca de elarchivo de lenguajeEspaol (o cualquiera que fuera el lenguage

    seleccionado en el asistente), deje una lnea en blanco, ydepus teclee[Files]. Estodeber

    cambiar a negritasi es que se tecleo correctamente. Inicie una nueva lnea, y tecleeSource:.Ahora deje un espacio, y teclee su ruta relativadebajo delscript instalador que est editando, ysu primer nombre de archivo. En este ejemplousar el archivo .LSP y el archivo.ODCL quecontiene el proyecto,por ciertosi sigue las recomendaciones del Tutorial de OpenDCLycreaunarchivo .VLX (este incluye los dos archivosmencionados), slo necesitar colocar ste ltimoaqui en lugar de los archivos .LSP y.ODCL. Deber tener algo como esto:

    Source: lspfiles\My OpenDCL Program.lsp; DestDir: {app};Flags: ignoreversion

  • 5/25/2018 Tutorial InnoIDE

    8/16

    Todo deber estar en una sola lnea. DestDir:es eldirectoriodondeel archivoterminaren la computadora del usuario. {app}es definido arriba en la seccin[Setup]comoDefaultDirName en estecasoProgram Files\My OpenDCL Program.ignoreversionsignificaque el archivo se sobreescribir con cualquier instalacinsubsecuente del mismo archivo.

    Ahora, agregeel archivo .ODCL. La forma ms fcil de hacerlo es concopiarypegar:

    Source: lspfiles\My OpenDCL Program.odcl; DestDir: {app};Flags: ignoreversion

    Finalmente, necesitamossuministrar al usuario el runtime de OpenDCL. Deber incluir una

    copia del Runtime .MSI en el mismo directoriolspfiles unicamente para tener todo junto.

    Usaremos la misma sintaxisde manera que el archivo estar ah cuando sea necesario desins-

    talar elprograma. Inno Setuppermite que instalemos el archivo MSI en un directorio temporal

    y ejecutarlo desde ah,pero ste directorio es borradocuadno la instalacin es completada,

    lo que significa que la desinstalacin fallarporque el archivo MSIya no existir.

    Deber obtener algo como esto

    Source: lspfiles\OpenDCL.Runtime.5.1.0.2.msi; DestDir:{app}; Flags: ignoreversion

    Oviamenteel nombre del archivo MSI que se tecleedependerade la versindel archivo que

    esta suministrando.

    Ahora que terminamos con al seccin [Files]. Deje un espacio en blanco(no es necesario

    hacerlo, pero le facilitar la lectura del script) yagregue una seccin [Run], usando el mismo

    procedimiento cuando cre la seccin [Files].

    Aqui es donde la sintaxis escriticamenteimportante. Si esta lnea(despus de [Run]) no es

    escrita correctamente, MSIEXEC no podra ejecutarseen nuestro archivo .MSI. La sintaxis que

    necesitamos es la siguiente:

    Filename: msiexec.exe; Parameters: /i{app}\OpenDCL.Runtime.5.1.0.2.msi /qn

    la cual debe estar en una misma lnea. La direccin de las comillas no es importante,perolosespacios colocados si lo son. Por si le interesa,el switch /i significainstalar, yel switch/qn significano mostrar laUI(Interfaz de Usuario). Si desea ms informacin acerca de

    estosswitches, opara tratar algo por su cuenta, abra una ventana del simbolo de sistema y teclee

    msiexecsin comillas. Windows le mostrar una ventana de dialogoque le explicatodoslosswitches de MSIEXEC. Por cierto,cuando pruebe el script, si la sintaxisde esta lneano sea

    correcta, Windows le mostrar el dialogo anterior en lugar de ejecutarMSIEXEC. Piense en

    esto como el premio de consolacin

    Siguiente, deje un espacio en blanco y agregue una seccin[UninstallRun]. La sintaxis en la

    lnea posterior a[UninstallRun] es similar perono identicaa la mostrada arriba:

  • 5/25/2018 Tutorial InnoIDE

    9/16

    Filename: msiexec.exe; Parameters: /x{app}\OpenDCL.Runtime.5.1.0.2.msi

    Aqui, cuando se ejecuta el desinstalador, necesitamos decirle aMSIEXEC que queremos

    desinstalarel archivo MSI, yeso es lo que el switch /x hace. El switch/dn no es reconcidocuando estamos desinstalando, asi que simplemente lo dejamos fuera.

    El archivo script deber ser parecido a esto:

    Figura12. El Inno Setup Script despus de editarlo.

    Si el suyo no se parece a este,ahora es el momento de corregirlo. Por cierto si no tiene los

    archivos anterioresen un directoriollamadolspfiles dentro de la carpetaInput como se des-

    cribi arriba, o no ha usadolos nombres de archivos realesque coloc en el mismo directorio,nointentecompilar(el prximo paso) su script de instalacin!Nada terrible pasarperolacompilacin fallar silos archivos en la seccin [Files] no se encuentran.

  • 5/25/2018 Tutorial InnoIDE

    10/16

    OK, es hora de usar el compilador para checar nuestra sintaxis. Primero, asegurese de guardar su

    trabajo en el editor de script! Aqui estn las herramientas del editorISTool que usaremos:

    La herramienta que checa la sintaxis es la que esta en el medio se asemeja a un antiguo molino

    casero. Haga click en el iconoy el compilador aparece:

    Figura14. El compilador de Inno Setup despus de encontrar un error

    Se dar cuenta que de inmediato empezar a saltar a travs del cdigo. Si encuentra un error

    (como lo hizo arriba), le seala que es lo que esta mal antes parar. Note que tambin le dice

    en que lnea de su script sucedi el error, yvoluntariamente(con un botnFind Error) lemuestra donde estuvo el error. En este caso, es exactamente lo que se describi'o anteriormenteel archivo .LSPnoexiste! De hecho, el compiladorse detiene unicamente en el primer error, es

    decir que si slo agrega el archivo(o corrigesu ortografa),puede ser que obtenga otro error si

    algo ms esta incorrecto.

    Ahora los archivos estn en el directorio adecuado:

  • 5/25/2018 Tutorial InnoIDE

    11/16

    Figura15. El compiladordeInno Setup despus de una compilacin exitosa

    Figura16. El compilador de Inno Setup est listo para hacer una prueba.

    Cuando vea este dilogo, sabr que el compilador ha sido exitoso. De hecho, ha compilado susarchivos en MyODCLProgramSetup.exe(MiProgramaODCLSetup.EXE), como se muestra en laFigura15.Casi hemos terminadopero no hemos verificadoqueel setup EXE funcionarde forcorrecta! Para hacer esto,decimosNO a eldilogode laFigura16. La razn es que talves queram

    analizar el programa de instalacin lneapor lnea, o talves queramos parar la ejecucin del cdigoen una lnea en particular. Podemos hacerlo paso a paso o establecer puntos de interrupcin igual

    que enVisual LISP o en VBA. De hecho, la tecla[F8] ejecuta el programa paso a paso, y la tecla

    [F9] establece puntos de interrupcin, exactamente como en los programas anteriores. Adems, la

    tecla [F7] nos permitir ir paso a paso en partes individuales de una lnea(lstima que no funcionen los otros programas!).

    Para ir paso a paso,primero inicie el compiladorcon el botn izquierdo:

    Esta ves el compilador espera su instruccin.

  • 5/25/2018 Tutorial InnoIDE

    12/16

    Figura17. El compilador de Inno Setup est listo para probar el cdigo.

    A estas alturas, la caja verde con la flecha en ella(arriba en la ventana)simplemente ejecutar

    el script,pero lo haremos paso a paso con [F8].

    Primero veremos un monton de movimiento, justocomo cuando probamos el script inicialmente.

    Eso es exactamente lo que pasa tambin aqui. De cualquier forma, si todo va bien, ver esto:

  • 5/25/2018 Tutorial InnoIDE

    13/16

    Figura18. La primera pgina de nuestro programa de instalacin.

    OK, las cosas se ven bien! Note que la informacin de nuestro programa es mostrada en el

    dilogo de arriba.Debido a que sta es la primera pgina, slo podemos hacerclick Next>

  • 5/25/2018 Tutorial InnoIDE

    14/16

    Figura19. La segunda pgina de nuestro programa de instalacin.

    Ahora el usuario(porque dijimos que estaba bien)puede cambiarla ubicacin destino de losarchivos. Asumiendoque eso es lo que queremos, le damos clickNext>:

    Figura20. El usuario puede escojer la carpeta de Men Inicio.

    Si eso es lo que quiere, sigamos adelante:

  • 5/25/2018 Tutorial InnoIDE

    15/16

    Figura21. Un recordatorio delo que suceder.

    OK. Ahora cuando hacemos click Install, nos regresaremos al script y lo observaremos.

    Figura22. El compilador de Inno Setuppaso a paso en su cdigo.

  • 5/25/2018 Tutorial InnoIDE

    16/16

    OK esa es lo que se ve cuando el compilador esta paso a paso en su cdigo. Siga presionando

    [F8] hasta que algo salga mal, o que el script se complete (esperemos). Si todo sale bien, se

    ver lo siguiente:

    Figura23. El compilador de Inno Setup ha terminado.

    Si todo se ve como usted lo desea,empieze a vender su programa!