Faça sua escolha
Existem várias maneiras de criar um instalador para qualquer coisa, incluindo um jogo XNA.
1. Solução de Implantação do Visual Studio
Este é bastante direto. Se você possui a edição Professional do Visual Studio, pode adicionar um projeto de Implantação à sua solução e, sempre que compilar esse projeto, ele compilará todas as dependências / ativos necessários para você e o tornará um bom instalador no final.
Este link contém a maioria das informações necessárias para iniciar e contém informações sobre a redistribuição da estrutura .NET e outros bits e partes relacionados.
Prós:
- Integrado ao Visual Studio
- Simples em criar e instalar um instalador MSI simples e pronto para distribuir
Contras:
- Não disponível em algumas versões do Visual Studio
- Difícil fazer com que o instalador faça algo mais complexo do que instalar / reparar / desinstalar.
2. WiX
Se você não tiver a opção de criar um projeto de Implantação do Visual Studio, devido a uma versão limitada do Visual Studio, há várias alternativas gratuitas disponíveis. O WiX é uma dessas alternativas.
É o XML do Windows Installer e pode ser integrado ao Visual Studio, assim como os projetos do VS Deployment. Isso também cria um instalador msi após a compilação. Esteja avisado, o WiX possui uma curva de aprendizado acentuada, mas permite várias complexidades no seu instalador.
Você pode descobrir mais sobre isso aqui
Prós:
- 100% grátis.
- Poderoso. Se você quiser fazer algo ridiculamente complexo em seu instalador, crie uma DLL C #, vincule-a ao seu projeto WiX e execute-a como uma Ação Personalizada. (Quase) Tudo é possível.
- Integra-se perfeitamente ao Visual Studio, funciona muito, muito bem com projetos .NET.
- As pessoas na lista de discussão do WiX fornecem muito suporte.
Contras:
- Difícil de entender e começar devido à acentuada curva de aprendizado.
- Os erros são quase absurdos quando você inicia e leva um tempo para descobrir qual é o verdadeiro problema no seu código.
- Não há tutoriais suficientes sobre o assunto. A maioria (na minha opinião) é mal formulada, mal estruturada e totalmente confusa.
3. NSIS
O NSIS é um pacote completo de criação de instaladores. Admito que mal o usei, mas quando o fiz foi uma experiência agradável. Há uma boa quantidade de tutoriais, é completamente programável, mas eu provavelmente diria que não é tão poderoso quanto o WiX (se alguém achar que não é esse o caso, fique à vontade para me corrigir).
É totalmente gratuito e de código aberto, e você pode encontrar mais informações aqui .
Prós:
- 100% grátis.
- Instalador com scripts, portanto, você poderá codificar algum comportamento complexo.
- Boa quantidade de tutoriais, bom suporte.
- Não cria um MSI, mas um EXE (os MSI podem ser ruins )
Contras:
- Não cria um MSI, mas um EXE (os MSI podem ser bons )
- Bastante limitado pelo escopo dos comandos de script
4. InstallShield e InstallAnywhere
Eu nunca usei o InstallShield, mas por uma questão de integridade, pensei em mencionar aqui. Minha única experiência é com o que as pessoas me disseram, então não vou listar os prós e os contras.
Tanto quanto sei, ele é bastante completo, mas não consegue lidar com uma grande quantidade de arquivos (> 1000). Você precisa pagar por isso. InstallAnywhere é uma versão multiplataforma do InstallShield. Mais informações aqui .
5. Outras soluções
Vou listar as outras soluções para implantação aqui, se alguém tiver outras para adicionar:
Instalador avançado - A versão freeware permite soluções básicas de implantação. Obrigado por esta adição, pek.
Conclusão
Há várias opções disponíveis para criar um instalador para o seu jogo XNA. Experimente alguns, veja o que você mais gosta. No entanto, o mais importante em relação à criação de instaladores é garantir que ele funcione em vários computadores. Se você estiver criando um instalador MSI, o teste será muito mais fácil executando o msi na linha de comando, usando o seguinte comando:
msiexec /i [name of installer.msi] /L*v verbose_log.txt
Isso gravará um log de todos os eventos pelos quais o instalador está passando, e você poderá diferir de qualquer ferramenta diff que desejar.
Para concluir, veja o que melhor se adapta a você e ao seu fluxo de trabalho, o teste é essencial e sempre que você estiver testando o instalador, sempre registre SEMPRE as instalações (na maioria das vezes, os instaladores nunca fornecem informações úteis sobre o que deu errado).
Isso se transformou em algo mais do que eu esperava e lamento. Mas espero que ajude.
~ Ray