O programa autônomo não possui dependências externas.
Ele não precisa ser apenas o arquivo .exe, pode ter as bibliotecas e arquivos de dados que acompanham: Descompacte o arquivo morto em uma pasta e execute o executável. Se você apenas descompactar um arquivo morto, nenhum atalho será adicionado ao menu Iniciar; portanto, você terá que navegar para a pasta onde o aplicativo descompactado está localizado e iniciá-lo a partir daí, ou criar manualmente um atalho para ele no menu Iniciar. Muitos usuários de computador acham difícil.
Mais Fácil de Usar
Um instalador orienta os usuários no processo de instalação. Você faz o download do instalador, .exe ou .msi (o primeiro é preferível para usuários não avançados) e o executa. Ele pega a pasta de instalação, geralmente Program Files
copia os arquivos, cria um atalho no menu Iniciar. Você terminou: na maioria dos casos, basta clicar em Avançar várias vezes.
Em seguida, vá ao menu Iniciar e execute o aplicativo. Alguns instaladores fornecem uma opção para iniciar o aplicativo quando a instalação estiver concluída.
Se o aplicativo abrir arquivos ou documentos de determinado tipo, o instalador o registrará no shell. Para que você possa clicar no arquivo para abri-lo.
Contrato de Licença
Muitos aplicativos, comerciais e gratuitos, exigem que você aceite o contrato de licença antes de poder usar o aplicativo. A instalação não continua até que você reconheça que concorda com os termos da licença. Mesmo se você não leu a licença, você concordou.
Dependências
Às vezes, não basta copiar os arquivos executáveis. Os aplicativos geralmente usam componentes compartilhados ou bibliotecas de tempo de execução especiais. Por exemplo, o .Net framework runtime precisa estar instalado para executar o aplicativo gravado para .Net; mesmo o tempo de execução do Visual C ++, se não estiver vinculado estaticamente, deve ser instalado. O instalador se encarrega de garantir que todas as dependências sejam atendidas.
Se um aplicativo consistir em vários arquivos .exe e / ou .dll, a vinculação dinâmica ao tempo de execução do Visual C ++ reduz o espaço em disco. Se .exe e .dll estiverem estaticamente vinculados, o tempo de execução será duplicado em cada arquivo.
Os termos de licença de uma biblioteca podem não permitir vinculação estática.
Segurança
Se uma vulnerabilidade for encontrada no tempo de execução, ela poderá ser atualizada separadamente do aplicativo. As atualizações para o tempo de execução .Net e Visual C ++ são instaladas automaticamente via Windows Update.
Se executáveis e bibliotecas estiverem vinculados estaticamente, o fornecedor do aplicativo precisará recompilar o aplicativo e liberar a versão atualizada. Portanto, o uso do tempo de execução compartilhado reduz o custo de manutenção de aplicativos para desenvolvedores e fornecedores.
A instalação Program Files
também fornece um ambiente mais seguro: os arquivos não podem ser modificados ou excluídos sem privilégios de administrador.
Registro
Muitos aplicativos do Windows contam com entradas no registro. Se o aplicativo usar COM, todos os objetos deverão ser registrados, caso contrário, o aplicativo falhará ao criar o objeto necessário e não será iniciado.