Instalação personalizada do Firebird com InnoSetup
Veremos neste artigo, como criar uma instalação personalizada do Firebird utilizando o InnoSetup. O InnoSetup (www.innosetup.com) é um ótimo instalador free que não deixa a desejar em nada aos instaladores comerciais. Vou tomar por base que o leitor já sabe o funcionamento do InnoSetup, pois é bastante fácil criar instalações com a ferramenta.
Nota: Para saber como funciona o InnoSetup de uma olhada na edição 39 e 40 da ClubeDelphi, onde fiz um artigo mostrando as principais características/funcionalidades da ferramenta.
Instalação
A idéia principal, é instalar o Firebird juntamente com sua aplicação (sistema), utilizando o InnoSetup. Vamos tomar por base que você já tem um projeto criado no InnoSetup (arquivos necessários adicionados no InnoSetup).
O Firebird permite que façamos uma instalação via linha de comando, portanto, basta passarmos os respectivos parâmetros no InnoSetup. Adicione um arquivo de instalação do Firebird (a versão que desejar), e no item [Run], adicione as seguintes linhas:
[Run]
Filename: {app}\tmp\Firebird-1.5.2.4731-Win32.exe; Parameters: "/SILENT /NOICONS /COMPONENTS=""ClientComponent"""
As características dos parâmetros são os seguintes:
Parâmetro |
Característica |
/SP |
Desabilita a janela inicial do instalador |
/VERYSILENT |
Não exibe nenhuma informação sobre a instalação do Firebird |
/NOICONS |
Não cria nenhum ícone no menu Iniciar |
/COMPONENTS= "nomedoscomponentes" |
Opções: SuperServerComponent, ClassicServerComponent, ServerComponent, DevAdminComponent e ClientComponent Exemplo: /COMPONENTS="SuperServerComponent, ServerComponent, DevAdminComponent, ClientComponent" (instalação completa) |
/FORCE |
Instala o Firebird independente de versões já instaladas |
/NOGDS32 |
Não gera o gds32.dll |
/COPYFBCLIENT |
Copia a fbclient.dll para o diretório de sistema |
Para saber mais sobre os parâmetros, acesse:
Dica: Esse link é o help da ferramenta IBExpert.
Para uma instalação completa e personalizada do Firebird, utilizando o InnoSetup, adicione o seguinte código:
Filename: {tmp}\Firebird-1.5.1.4481-Win32_Colatte.exe; WorkingDir: {tmp}; Parameters: "/VERYSILENT /NOICONS /COMPONENTS=""SuperServerComponent, ServerComponent, DevAdminComponent, ClientComponent"" /FORCE /NOGDS32 /COPYFBCLIENT"
Assim, quando da instalação do seu sistema, o usuário nem irá notar que esta instalando juntamente, o banco de dados. Isso é bastante interessante quando precisamos de uma configuração fixa, como por exemplo, se você ainda utiliza a gds32.dll no projeto e não precisa que o usuário configure isso durante a instalação do Firebird.
Você ainda pode adicionar flags para que o arquivo seja copiado para a pasta temporária da máquina do usuário e deletado após a instalação (seção [Files]):
Source: ..\Setup\Firebird-1.5.1.4481-Win32_Colatte.exe; DestDir: {tmp}; Flags: deleteafterinstall promptifolder