Crie instaladores com o Inno Setup

Inno Setup permite configurar o processo de instalação que o software deve seguir, utilizando um assistente ou wizard e em modo mais avançado com a programação de um script, que são arquivos de texto com um formato sequencial que permitem determinar quais os passos que devem ser seguidos .

Os scripts do Inno Setup são arquivos de texto com extensão .iss. O script controla todos os aspectos da instalação. Ele especifica quais arquivos devem ser instalados e onde, quais menus e pastas devem ser criados e quais recursos o aplicativo que estamos instalando requer.
Arquivos de script são arquivos de texto que podem ser criados e editados no Inno Setup ou em qualquer editor de texto. O software nos permitirá compilar o arquivo de script iss e por padrão atribuirá o nome Setup.exe uma vez compilado, portanto teremos um programa completo, pronto para distribuir e executar a instalação.
Para começar um exemplo simples, vamos começar, neste caso, vamos fazer a partir do Linux com Vinho e o assistente.

Abaixo detalhamos os dados do aplicativo, nome do aplicativo, versão, empresa que o desenvolveu, site.

O próximo passo será configurar em qual pasta o aplicativo será instalado, por padrão será a Pasta do Programa ou Arquivos do Programa, tanto no Windows quanto no Linux com Wine esta pasta está localizada, caso a pasta de instalação não exista, o software irá criá-lo.

Então devemos atribuir nosso arquivo executável e suas dependências ou bibliotecas, aqui tomamos como exemplo um software que desenvolvemos com Java e convertemos para exe com Launch4j no tutorial Netbeans e Sqlite em três camadas - Parte II

O próximo passo será configurar em qual menu o aplicativo será integrado e em quais ícones aparecerá, então na próxima tela pedirá para adicionarmos os arquivos txt ou html com informações de licença, ajuda e o texto antes e depois da instalação .

Os scripts do Inno Setup são organizados em seções. Cada seção controla um aspecto diferente da instalação. Uma seção é iniciada especificando o nome da seção entre colchetes []. Dentro de cada seção, iremos especificar as ações a serem realizadas.
Por fim, adicionaremos os ícones e configuraremos o layout dos menus. No final, iremos criar o script e devemos compilá-lo a partir do menu Build> Compile. Isso gerará uma pasta de saída com o arquivo setup.exe, que é o instalador.
Aqui podemos ver o instalador executado em Linux no Wine, portanto funciona tanto no Windows quanto no Linux.

Vamos analisar o script gerado


Na definição, configuramos os dados do aplicativo usando as diretivas #define
 #define MyAppName "Tutoriais" #define MyAppVersion "2.0" #define MyAppPublisher "Myempresa" #define MyAppURL "http://www.mycompany.com/" #define MyAppExeName "mycompany.exe" 
A seção [Setup] contém parâmetros globais usados ​​pelo instalador e desinstalador. As políticas podem ser personalizadas como uma atualização de software ou link de suporte técnico.
 [Configuração] AppId = {{3502D097-DF67-49DD-B98B-59F0866126BB} AppName = {# MyAppName} AppVersion = {# MyAppVersion}; AppVerName = {# MyAppName} {#MyAppVersion} AppPublisher = {# MyAppPublisher}} AppSupportURL = {# MyAppURL} AppUpdatesURL = {# MyAppURL} DefaultDirName = {pf} \ {# MyAppName} DefaultGroupName = {# MyAppName} OutputBaseFilename = configuração Compression = lzma SolidCompression = sim 
Na seção [Idiomas] definimos os idiomas de instalação, aqui vemos que usamos o inglês e o espanhol, retirados diretamente da pasta Idiomas do InnoSetup:
 [Idiomas] Nome: "inglês"; MensagensFile: "compilador: Default.isl" Nome: "espanhol"; MensagensFile: "compilador: Idiomas \ Espanhol.isl" 
A seção [Tarefas] é opcional. Define todas as tarefas de configuração personalizáveis ​​que o usuário executará durante a instalação. Crie menu, ícones, associe extensões de arquivo à nossa aplicação.
 [Tarefas] Nome: "desktopicon"; Descrição: "{cm: CreateDesktopIcon}"; GroupDescription: "{cm: AdditionalIcons}"; Sinalizadores: desmarcado 
O parâmetro Flags ou Flag é um conjunto de opções adicionais separadas por espaços. As seguintes opções são suportadas.
checkablealone: indica que se um componente for desmarcado, todas as suas dependências serão desmarcadas.
verificado uma vez: indica que a instalação de um componente deve ser desmarcada quando o programa de instalação encontrar uma versão anterior do mesmo aplicativo que já está instalado, para que o usuário possa decidir se deseja substituí-lo ou não.
reiniciar: Indica que após a execução de uma tarefa, o usuário é solicitado a reiniciar o sistema ao final da instalação. Exemplo se um servidor ou banco de dados está instalado e exigimos uma reinicialização para tê-lo disponível.
desmarcado: indica que a opção deve ser destilada e deve ser selecionada pelo usuário.
A seção [Arquivos] define configurações e especificações para cada arquivo em nosso aplicativo. O sinalizador isreadme indicará que o arquivo é somente leitura, enquanto onlyifdoesntexist indicará que o arquivo será copiado enquanto não existir.
 [Arquivos] Fonte: "Z: \ mycompany \ dist \ mycompany.exe"; DestDir: "{app}"; Sinalizadores: Fonte: "Z: \ mycompany \ dist \ help.txt"; DestDir: "{app}"; Sinalizadores: isreadme Fonte: "Z: \ mycompany \ dist \ dbecompany.sqlite"; DestDir: "{app}"; Sinalizadores: onlyifdoesntexist 
A seção [Ícones] indica os ícones de cada menu, Área de Trabalho ou Atalho
 [Ícones] Nome: "{group} \ {# MyAppName}"; Nome do arquivo: "{app} \ {# MyAppExeName}" Nome: "{commondesktop} \ {# MyAppName}"; Nome do arquivo: "{app} \ {# MyAppExeName}"; Tarefas: desktopicon 
A seção [Executar] é opcional e especifica quais programas devem ser executados após a instalação do software, mas antes da conclusão do programa de instalação. Aqui podemos instalar dependências, se houver, como Net framework ou Java SE Runtime Environment
 [Executar] Nome do arquivo: "{app} \ {# MyAppExeName}"; Descrição: "{cm: LaunchProgram, {# StringChange (MyAppName, '&', '&&')}}"; Sinalizadores: nowait postinstall 
Alguns sinalizadores que esta seção suporta são:
nowait: especifica que o instalador não esperará que o processo termine a execução antes de prosseguir para a próxima tarefa [Executar] ou para concluir a instalação.
pós-instalação: instrui o instalador a criar uma caixa de seleção para informar que a instalação do aplicativo ou de um determinado componente está concluída. O usuário pode desmarcar ou marcar esta caixa de seleção e, portanto, escolher se esta tarefa deve ser processada ou não. Isso é para se já tivermos um componente instalado e não quisermos instalá-lo novamente.
Outras seções que podemos configurar a partir do Código Inno Setup Script está:
A seção [Tipos] Esta seção é opcional. Aqui nós definimos a instalação de certos componentes de acordo com os tipos de configuração, então ele será exibido na página Selecionar Componentes do assistente. Durante a compilação, um conjunto de tipos de configuração padrão é criado se você definir componentes em uma seção [Componentes], então cada componente recebe um tipo.
A seção [Tipos] está escrita abaixo da seção [Configuração] Uma vantagem é que podemos criar tipos personalizados para as opções de instalação, o mais conhecido é a instalação completa ou completa e personalizada.

Através dos tipos criamos um parâmetro com o seu nome e atribuímos uma descrição a ele, depois criamos rótulos para os componentes, atribuímos uma descrição ou nome e qual será o tipo de instalação que corresponde, por exemplo, o software será instalado em qualquer tipo de instalação, mas não ajuda, isso pode ser usado para instalar diferentes componentes dependendo do tipo de instalação.
 [Tipos] Nome: "pro"; Descrição: "Instalação profissional" Nome: "PMEs"; Descrição: "Instalação SME" Nome: "win"; Descrição: "Instalação do Windows" Nome: "lin"; Descrição: "Instalação Linux" Nome: "pessoal"; Descrição: "Instalação personalizada"; Sinalizadores: iscustom [Componentes] Nome: "programa"; Descrição: "Tutoriais"; Tipos: pro PMEs pessoais; Nome: "sqlitewin"; Descrição: "Sqlite db"; Tipos: pro win Nome: "sqlitelin"; Descrição: "Sqlite db"; Tipos: pro lin Nome: "help.htm"; Descrição: "Ajuda"; Tipos: pro [Arquivos] Fonte: "Z: \ minhaempresa \ dist \ minhaempresa.exe"; DestDir: "{app}"; Componentes: Programa fonte: "Z: \ mycompany \ dist \ sqlite.dllt; DestDir:" {app} "; Componentes: sqlitewin Fonte:" Z: \ mycompany \ dist \ sqlite.so "; DestDir:" {app} "; Componentes: sqlitelin 

Para que possamos customizar a instalação do nosso aplicativo, o script pode ser programado com mais complexidade conforme a necessidade.Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo
wave wave wave wave wave