Clique aqui para voltar à tela inicial da ajuda


Atualizando aplicações com o Mep Installer ST


Quando seu programa é instalado, ele grava informações da aplicação no registro do Windows. Posteriormente, se o usuário instalar uma nova versão do seu programa, ele manterá as configurações de instalação (por exemplo, a pasta de destino, o nome do grupo de atalhos no menu Iniciar, etc). Com a diretiva UpdateApp na seção [Setup], você pode fazer com que novas versões sejam atualizadas automaticamente, uma vez que o usuário não precisará alterar as informações. No modo de atualização, o programa de instalação perguntará se o usuário quer atualizar sua aplicação, e se ele escolher Sim, apenas a tela de progresso será exibida. E se ele executar um programa de atualização, mas sua aplicação não estiver instalada? Neste caso o programa de instalação não permite que sua aplicação seja instalada, ou seja, a versão de atualização servirá apenas para quem já tiver o programa. No Mep Installer ST a tela de progresso foi modificada neste modo, ficando mais leve e rápida, visto que não serão exibidas as outras telas da instalação.

Para utilizar esse recurso, no arquivo de projeto da primeira versão da sua aplicação (aquela que os usuários deverão ter para atualizar), defina o item UpdateKey, na seção [Setup]. Nas versões de atualização para esta mesma aplicação, defina o mesmo item UpdateKey, com o mesmo valor, e o item UpdateApp=yes. O item UpdateKey é um valor, que será armazenado codificado, para verificar se a aplicação realmente já estava instalada, e se poderá ser atualizada. Ou seja, as aplicações de um mesmo "grupo" de atualizações, tais como as versões 1.0, 1.2, 1.3, etc., deverão ter no arquivo de projeto os mesmos valores de AppId e UpdateKey.

Por exemplo, na primeira versão do seu programa, uma versão "completa", defina:

[Setup]
AppId=Meu Programa
UpdateKey=AtualizaMeuPrograma

Nas versões de atualização do mesmo programa, utilize assim:

[Setup]
AppId=Meu Programa
UpdateKey=AtualizaMeuPrograma
UpdateApp=yes

O valor de UpdateKey pode ser o mesmo nome da sua aplicação, uma frase curta, um número, um código qualquer que você quiser. Utilize apenas números e letras, sem caracteres especiais nem acentos, para evitar problemas com sistemas de idiomas diferentes.

Você pode definir também a diretiva NotifyUpdate, com o valor yes, para exibir uma mensagem ao concluir a atualização. Exemplo:

[Setup]
UpdateKey=AtualizaMeuPrograma
UpdateApp=yes
NotifyUpdate=yes

Veja na pasta de exemplos, os arquivos de projeto dentro da pasta UpdateApp. Se você compilar e executar primeiro o programa de atualização (lá ele está com o nome de "versão 2"), ele não deixará instalar, a menos que você tenha instalado o programa completo (no caso, o de nome "versão 1").

Observações: nas versões de atualização, não coloque senha de instalação nem número serial, pois se o compilador identificar que trata-se de uma versão de atualização, ele manterá o serial e a senha, mas a instalação se dará no modo normal. Lembre-se de que as versões de atualização só poderão ser instaladas se a mesma aplicação já estiver instalada. Se você não definir um valor para UpdateKey, a aplicação não poderá ser atualizada.

Dica: para certificar-se de que o programa foi executado por um arquivo que você definiu, veja na seção [Setup] a diretiva OnlyIfCommandLine. Neste caso só será possível executar o programa de instalação, em qualquer modo, se um comando que você especificar for passado na linha de comando.


Clique aqui para voltar à tela inicial da ajuda