Zetta-Ømnis Soluções Tecnológicas
Desenvolvendo hoje a tecnologia do amanhã
Visite Nosso Patrocinador
Você está aqui:
DO NOT UNDERSTAND PORTUGUESE? CLICK ON THE FLAG TO CHANGE THE LANGUAGE!

Inno Setup (Parte 2): Criando o projeto básico

Imagem meramente ilustrativa

Anteriormente eu falei rapidamente a respeito do Inno Script Studio (ISS), que é a IDE que usaremos para criar nosso instalador. Falei de forma muito básica a respeito da interface da IDE e como ela edita os projetos do Inno Setup, manipulando separadamente cada seção do arquivo de projeto, o qual lembra muito (mas não é) um arquivo .ini. Falei também que cada seção do arquivo de projeto do Inno contém entradas de dados que são manipuláveis por janelas específicas, algumas das quais muito semelhantes entre si. Esse conhecimento será útil posteriormente neste tutorial, mas por ora, a fim de criar o projeto básico (porém funcional) usaremos o wizard que o próprio ISS fornece. Ele montará o esqueleto do projeto que vamos modificar no decorrer deste tutorial.

Os arquivos do programa principal

Na parte anterior eu compartilhei o link para o arquivo inno.rar. Este arquivo compactado contém a estrutura de pastas  que usaremos durante o decorrer deste tutorial. Extraia esse arquivo em um local adequado. Ele contém duas pastas "aplicação" e "instalador". Aplicação é a pasta que contém os arquivos do programa a ser instalado. Em nosso caso apenas instalaremos o executável (que está na pasta bin). A pasta "instalador" contém o projeto do nosso instalador e todos os arquivos que este projeto precisará. Durante o desenrolar do tutorial eu indicarei onde salvar cada arquivo.

Os arquivos do PostgreSQL

Eu solicitei que fosse baixado o zip com os arquivos do PostgreSQL. Estes arquivos serão usados posteriormente, não agora, mas eu acho bom que você extraia logo estes arquivos dentro da mesma pasta que contém as pastas "aplicação" e "instalador", por exemplo, se estas duas pastas estão dentro da pasta "C:\Inno", crie uma pasta de nome "pg" dentro desta pasta, de forma que se tenha "C:\Inno\pg", "C:\Inno\aplicação" e "C:\Inno\instalador". Não vou mais falar sobre a extração destes arquivos. Faça isso agora mesmo e evite problemas em partes posteriores deste tutorial. Vou considerar os caminhos tais e quais eu indiquei aqui.

A instalação do QuickStart Pack

Eu não vou cobrir a instalação do QuickStart Pack porque ela é bem direta. Execute a instalação e vá dando "Next" e aceitando todas as opções que lhe forem apresentadas. Ao final, você terá instalado em seu sistema o Inno Setup e o Inno Script Studio, com todos os plugins e ferramentas que vamos precisar.


Criando o projeto básico com o wizard

Sem mais delongas:

Abra o ISS e clique na opção de menu File > New > New Script (Wizard)

A janela inicial do Wizard vai aparecer. Simplesmente pressione Next para exibir a primeira tela útil do wizard, a qual é vista a seguir:

Esta tela solicita algumas informações a saber:

  • Application name é o nome daquilo que será instalado. Se for um programa apenas, é o nome do programa, se for um conjunto de programas, pode ser o nome deste conjunto.

  • Application version é a versão daquilo que será instalado. Este campo não tem um formato específico. Você pode usar números de versões com 2 dígitos, como no exemplo, ou 4, ou mesmo incluir algum texto, como por exemplo 1.0 Release 33. Depende de você usar algo que faça sentido, pois o significado deste campo é livre.

  • Application publisher é o nome do desenvolvedor, no caso, a empresa que desenvolveu o programa sendo instalado ou o nome do grupo de pessoas responsável por ele. Pode ser um site também, é um campo com formato livre, logo, depende de você saber o que colocar neste campo.

  • Application website é o nome do site onde se encontram mais informações a respeito do programa sendo instalado. Pode ser o site referente ao Application Publisher, caso você não tenha usado um site neste campo.

Clique em Next para exibir a próxima tela do assistente:

Nesta tela definimos o diretório-base de instalação do nosso programa. Todas as instalações feitas com o Inno Setup precisam desta informação, mesmo que, ao instalar, o programa crie diretórios em outras partes do sistema. Apesar de ser possível criar pastas em qualquer lugar, é terminantemente não recomendável criar arquivos e/ou pastas fora da pasta base de um programa sendo instalado, a não ser que isso seja estritamente necessário. Para facilitar o aprendizado resolvi manter este tutorial dirigido a opções simples e diretas, logo, configure Application destination base folder como "(Custom)", e digite na caixa de texto a constante {pf32}.


O Inno Setup possui algumas constantes que representam diretórios padrão do Windows e {pf32} significa "Arquivos de programas de 32 bits". Em outras palvras, em Windows de 32 bits, {pf32} = C:\Arquivos de programas (ou C:\Program Files), já em Windows de 64 bits, {pf32} = C:\Arquivos de programas (x86) (ou C:\Program Files (x86)). Como nosso programa de exemplo é um programa de 32 bits, se faz necessário indicar que seus arquivos fiquem nas pastas adequadas a arquivos de programas de 32 bits. Dê uma olhada na ajuda do Inno Setup, buscando por "constantes" e veja outras constantes que podem ser usadas sempre que se fizer referência a diretórios.

A outra configuração, Application folder name, diz respeito ao nome padrão da pasta do programa sendo instalado. Esta pasta será criada dentro de Application destination base folder, logo, ao se usar este instalador em um Windows de 64 bits, por padrão, caso o usuário não altere o caminho de instalação, o programa será instalado em C:\Arquivos de programas (x86)\ZOISE.

Por falar na possibilidade de alterar o caminho de instalação, a opção Allow user to change the application folder serve exatamente para isso. Mantendo ela marcada, o wizard de instalação vai dar a opção para o usuário escolher uma pasta de instalação qualquer para que o programa seja instalado. Apesar de isso ser um comportamento padrão de qualquer instalador que se preze, dependendo daquilo que está sendo instalado, pode ser interessante desmarcar esta opção de forma que o programa seja instalado sempre na mesma pasta que nós definimos aqui.

Clique em Next para exibir a próxima tela do assistente:

Nesta tela informaremos apenas o executável principal daquilo que estamos instalando na opção Application main executable file. No caso, no nosso exemplo, que é bem simples, existe apenas um programa, logo, ele é o principal executável. Clique no botão "Browse" para selecionar o executável.

Allow user to start the application after Setup has finished, faz aparecer no final da instalação, na tela de conclusão da mesma, uma checkbox que, se marcado, fará o programa instalado ser executado assim que a instalação terminar.

Esta tela permite incluir outros arquivos e pastas, mas não vamos fazer isso agora, porque podemos fazer isso depois que o assistente tiver criado o esqueleto de nosso projeto de instalador. Será um bom motivo para olharmos a tela de adição de arquivos.

Clique em Next para exibir a próxima tela do assistente:

Esta tela tem várias opções. A título de aprendizado, marque todos os checkboxes. Vou dar uma breve explicação sobre as opções desta tela:

  • Application Start Menu folder name é o nome padrão da pasta que será criada no menu iniciar

  • Allow user to change the Start Menu folder name, se marcado, faz com que o usuário seja capaz de alterar o nome da pasta que será criada no menu iniciar

  • Allow user to disable Start Menu folder creation, se marcado, faz com que o usuário seja capaz impedir que a pasta do programa sendo instalado não seja criada no menu iniciar

  • Create an Internet shortcut in the Start Menu folder, se marcado, e se a pasta do menu iniciar for criada, fará com que um atalho de internet (link) seja criado dentro desta pasta. Este link aponta para o website da aplicação, definido na primeira página deste assistente

  • Create an Uninstall icon in the Start Menu folder, se marcado e se a pasta do menu iniciar for criada, fará com que um atalho para o desinstalador seja incluído dentro desta pasta. É altamente recomendável que esta opção seja utilizada, pois fornecerá ao usuário um meio prático de desinstalar seu programa e todos os arquivos instalados junto com ele. Se esta opção não for utilizada, o usuário só poderá desinstalar o programa usando o Painel de Controle do Windows

  • Allow user to create a desktop icon, se marcado, apresentará uma opção para o usuário, que, se marcada durante a instalação, fará com que seja criado um atalho na área de trabalho para o programa sendo instalado

  • Allow user to create a Quick Launch icon, se marcado, e se a versão do Windows for menor que 6.0 (Windows Vista), apresentará ao usuário uma opção que, se marcada durante a instalação, fará com que seja criado um atalho na barra de inicialização rápida (Quick Launch) para o programa sendo instalado

Clique em Next para exibir a próxima tela do assistente:

Nesta tela você poderá informar 3 arquivos em formato RTF (Richtext Format) que serão exibidos durante a instalação. License file, exibirá o conteúdo de um arquivo de licença e, na tela onde esta licença estiver sendo apresentada, haverá dois botões de rádio e o usuário precisará aceitar a licença para continuar a instalação do programa.

Information file shown before installation, exibirá o conteúdo do arquivo ANTES da instalação continuar, após o usuário aceitar o contrato de licença.

Information file shown after installation, exibirá o conteúdo do arquivo APÓS a instalação terminar, imediatamente antes da última tela do instalador, a tela que contém o botão "Concluir".

Clique em Next para exibir a próxima tela do assistente:

Nesta tela você deve escolher os idiomas disponíveis para o instalador. Ao executar o instalador, uma tela solicitando a escolha do idioma será apresentada e ao escolher o idioma, o instalador será apresentado usando-o. No meu entendimento, esta opção só faz sentido se seu programa for multilinguagem, do contrário você pode escolher apenas um idioma, o idioma no qual seu programa foi desenvolvido. A título de manter este tutorial didático, eu recomendo escolher dois idiomas quaisquer.

Clique em Next para exibir a próxima tela do assistente:

Nesta tela é possível configurar alguns aspectos do instalador sendo gerado. As configurações disponíveis são:

  • Custom compiler output directory é o diretório onde o instalador (arquivo exe) gerado será salvo após sua compilação.

  • Compiler output base file name é o nome do instalador final que será gerado. Coloque aqui o nome que quiser, mas não use simplesmente "Setup" como nome do instalador porque o Windows não gosta desse nome e pode prejudicar o funcionamento do instalador.

  • Custom Setup icon file é o arquivo de ícone usado pelo instalador. Ao usar um ícone personalizado, o executável do instalador terá este ícone.

  • Setup password é uma senha opcional que você pode definir de forma que pessoas não autorizadas não sejam capazes de instalar o programa.

  • Use the password to encrypt the application files é uma opção que eu recomendo estar sempre habilitada caso se use uma senha. Com esta opção os arquivos não são salvos de forma plana dentro do instalador, e dessa forma se torna mais difícil realizar uma extração de arquivos a partir do instalador, caso não se tenha a senha.

Clique em Next para exibir a próxima tela do assistente:

Esta tela dá a opção de desativar o ISPP, que é um sistema de diretivas de compilação que pode ser usado dentro do script do Inno, eu recomendo deixar isso habilitado sempre, pois no futuro, em instalações mais elaboradas isso pode ajudar bastante.


Clique em Next para exibir a próxima tela do assistente:

Finalmente a última tela do assistente de criação de projetos. Simplesmente pressione "Finish" para concluir e ao fazer isso, a seguinte caixa de diálogo vai aparecer:

Caso queira, clique em Yes para compilar o script que acabou de ser gerado pelo assistente. Se você clicar em Yes, a seguinte caixa de diálogo vai aparecer:

Nesta caixa de diálogo, pressione Yes para salvar o arquivo em um local adequado. E ao fazer isso a tela do Inno Script Studio ficará acessível e mostrará o script que acabou de ser gerado!

Abrindo o projeto de exemplo...

Como você deve estar usando o arquivo anexado a parte 1 deste tutorial, você não deve precisar executar os passos acima manualmente. Se você os executou, não se preocupe, você fez bem, mas a fim de tornar o tutorial mais homogêneo, abra o arquivo ZOISE.iss no Inno Script Studio. A tela do Inno Script Studio vai apresentar o script tal como na figura abaixo:

Explore o script. Tente identificar dentro dele cada uma das partes explicadas na seção anterior, isso ajuda no entendimento e fixação do que foi feito via assistente. Veja também os itens do Tree View à esquerda da tela de edição, veja cada um deles, pois alguns tem valores que foram preenchidos pelo assistente e você pode dar dois cliques nestes valores para editar pormenores. Falando em edição, não edite nada neste arquivo sem orientação por enquanto, pois vamos utilizá-lo durante todo o tutorial e será necessário que ele se mantenha sempre igual àquilo que estou apresentando de forma escrita.

Executando o instalador pela primeira vez

Antes de executarmos o instalador pela primeira vez, será necessário realizar alguns ajustes no script, pois minha estrutura de diretórios pode ser diferente da sua. Sempre que for necessário baixar os arquivos (a partir da parte 1 deste tutorial) você precisará executar os procedimentos a seguir para ajustar e tornar o script compilável:

  • Na seção [Setup] do script

    • Alterar a variável LicenseFile de forma que ela aponte para o arquivo correto, em outras palavras, em LicenseFile=<meu caminho>\inno\instalador\recursos\licença.rtf, substitua <meu caminho> pelo caminho correto;

    • Alterar a variável InfoBeforeFile de forma que ela aponte para o arquivo correto, em outras palavras, em InfoBeforeFile=<meu caminho>\inno\instalador\recursos\infobefore.rtf, substitua <meu caminho> pelo caminho correto;

    • Alterar a variável InfoAfterFile de forma que ela aponte para o arquivo correto, em outras palavras, em InfoAfterFile=<meu caminho>\inno\instalador\recursos\infoafter.rtf, substitua <meu caminho> pelo caminho correto;

    • Alterar a variável OutputDir de forma que ela aponte para o diretório correto, em outras palavras, em OutputDir=<meu caminho>\inno\instalador\bin, substitua <meu caminho> pelo caminho correto;

    • Alterar a variável SetupIconFile de forma que ela aponte para o arquivo correto, em outras palavras, em SetupIconFile=<meu caminho>\inno\instalador\recursos\favicon.ico, substitua <meu caminho> pelo caminho correto;

  • Na seção [Files] do script

    • Alterar o caminho mostrado na variável Source de forma que ela aponte para o arquivo correto, em outras palavras, em Source: "<meu caminho>\inno\aplicação\bin\exe\InstaladoPeloInnoSetup.exe", substitua <meu caminho> pelo caminho correto;

Depois de todo esse trabalho de digitação, quero dizer que existe também a forma visual (por meio de caixas de diálogo) de realizar estes passos, mas eu não expliquei como fazer, pois quero que isso seja sua "lição de casa": explorar todas as opções do menu Project > Setup Options e ver o que é possível fazer com elas.

Após realizar estes procedimentos e certificar-se de que todos os caminhos existem de fato é possível executar o instalador pela primeira vez. Para isso, simplesmente pressione o bom e velho F9. Se tudo correr bem o instalador será iniciado e você poderá instalar seu programa sem qualquer problema. Simplesmente continue o instalador tentando identificar nele todas as opções que foram definidas até concluí-lo. Veja na imagem abaixo que até mesmo os itens do Menu Iniciar foram criados conforme minha vontade durante a instalação:

Bom, por enquanto isso é tudo! Se você executar o programa instalado (ou se você manteve o checkbox "Iniciar Zetta-Omnis Inno Setup Example") você provavelmente receberá um erro, pois nosso programa precisa de um banco de dados PostgreSQL instalado. Nas próximas partes deste tutorial eu vou mostrar como incluir no instalador os arquivos do PostgreSQL de forma externa. Até a próxima!


Acesso Rápido
Não digite mais que o necessário...



Escaneie este QRCode em dispositivos móveis para acessar a página atual rapidamente nestes dispositivos
Conteúdo Verificado!
#BULLSHITFREE #CLICKBAITFREE
#MONEYLESS
Este site é amigo do desenvolvedor do mundo real
Gostou do conteúdo?
Se você gostou do conteúdo que está lendo, você pode ajudar a manter este site no ar doando qualquer quantia. Use os botões abaixo para realizar sua doação.
 
É rápido, fácil e indolor :)
 

Estatísticas em tempo real

Visite Nosso Patrocinador