Crie uma configuração de aplicativo no visual studio 2013

90

Já tenho um projeto pronto para ser construído. Atualmente, estou usando o Visual Studio 2013.

Mas, eu não sei como criar uma configuração MSI no visual studio 2013, mas para o visual studio 2010 existem muitos tutoriais por aí discutindo como criar uma configuração no visual studio 2010.

  • Isso significa que preciso instalar o visual studio 2010 para criar uma configuração de aplicativo para meu projeto?

  • Qual é a maneira mais fácil de criar uma configuração de aplicativo no visual studio 2013?

Kaoru
fonte
2
Experimente o Windows Installer XML (WIX) , é extremamente personalizável e extensível, você também pode integrá-lo com suas compilações de CI. Projetos de configuração de aplicativo foram removidos em 2012, você pode usar o Installshield SE que foi incluído em um ponto se você ainda precisar de um instalador rápido e sujo. Usando WIX em 2013
Mgetz
VS 2012 e depois não há projeto de implantação como em 2010
kostas ch.
1
que tal clicar uma vez senhor @Mgetz? e como uso o clique uma vez?
Kaoru
@Kaoru Eu nunca fiz Clickonce funcionar de forma confiável em nenhuma versão do VS, então não serei de muita ajuda. Mas, em teoria, funcionaria.
Mgetz
2
Clickonce tem algumas peculiaridades bastante estranhas: você tem que executar novas versões da mesma instalação do diretório de instalação original para fazer uma atualização automática. Além disso, parece que você precisa carregar a pasta anexada com o clickonce .exe. O que fiz foi embrulhar o material de instalação do Clickonce dentro de um arquivo SFX com winrar, sempre executando-o a partir do diretório temporário e essencialmente criando um "clique até menos de uma vez no instalador".
Traubenfuchs

Respostas:

131

A Microsoft ouviu o pedido de suporte a instaladores (MSI) no Visual Studio e lançou a extensão de projetos do instalador do Visual Studio . Agora você pode criar instaladores no VS2013, baixe a extensão aqui do visualstudiogallery.

visual-studio-installer-projects-extension

Peter
fonte
1
Novas e ótimas informações. A Microsoft deve melhorar seu artigo relacionado KB2900817
satoc
@peer Não é solução no VS 2012? Alternativas? Amostras de código-fonte completo no VS2012?
Kiquenet
@kiquenet não, vs2012 não é suportado. A maioria dos projetos são atualizados com qualquer trabalho para vs2013 e compatível com versões anteriores para vs2012.
Pedro
4
Não se preocupe em ler o artigo ... ele apenas diz para você fazer o seguinte: Vá para Ferramentas -> Extensões e atualização. Escolha a guia ONLINE. Pesquise "Visual Studio Installer Projects Extension"
Prisioneiro ZERO
Eu tenho uma solução VS 2010 que tem um projeto de instalação dentro, quando a solução é construída com o VS 2010, um arquivo msi é criado. Agora só temos o VS 2013, e não consigo alterar / migrar o projeto de instalação. O que devo fazer para criar o arquivo msi?
Jirong Hu de
10

A partir do Visual Studio 2012, a Microsoft não fornece mais o pacote de implantação integrado. Se quiser usar este pacote, você precisará usar o VS2010.

Em 2013, você tem várias opções:

  • InstallShield
  • WiX
  • Role o seu próprio

Em meus projetos crio meus próprios instaladores do zero, que, por não usar o Windows Installer, têm a vantagem de ser super rápidos, mesmo em máquinas antigas.

Ming Slogar
fonte
Você @ ming-slogar tem algum aplicativo de exemplo com um instalador que gostaria de compartilhar conosco?
Highmastdon de
@Highmastdon: Basicamente, acabei de criar um instalador bootstrapper com C ++ nativo (configurado para ser capaz de rodar sem pré-instalar as libs de tempo de execução C ++) que verificou o .NET instalado e lançou um instalador WPF GUI. O instalador do WPF permitia que o usuário escolhesse várias opções, copiasse os arquivos e escrevesse as chaves do registro. Não tenho um aplicativo de "amostra" - estou usando o instalador no projeto em que estou trabalhando, mas posso tentar extrair uma amostra, se precisar.
Ming Slogar
Eu realmente gostaria de ver um exemplo completo disso. Importa-se de compartilhar? Não o código em si, mas o conceito e algo de sua experiência? Por exemplo, como você o incorpora ao projeto que será instalado, como você automatiza coisas comuns (copiar lista de arquivos, regras: sobrescrever / não sobrescrever, etc). Além disso, estou usando NSIS atm, mas estou cansado de sua linguagem de script, interface de usuário moderna feia e design muito lento (ainda na idade da pedra do xp).
Sinatr de
@Sinatr Para incorporar assemblies, usei muito os arquivos de recursos - tanto em C ++ quanto em C #. Para copiar arquivos, eu fui preguiçoso e escrevi manualmente cada operação de arquivo (por exemplo, usando File.WriteAllBytesou File.WriteAllText, dependendo do tipo de arquivo). Eu não lidei com a substituição de arquivos existentes - todos os meus assemblies foram prefixados com o nome do meu aplicativo (por exemplo, AppName.Controls.dll, AppName.Images.dll), portanto, a chance de um arquivo duplicado seria muito pequena. Se você quiser lidar com todos os cenários possíveis, terá que fazer o que o Windows Installer faz - o que meio que frustra o propósito da personalização.
Ming Slogar
7
@Kiquenet Eu carreguei o código do meu instalador personalizado aqui: drive.google.com/… . Ele não será compilado devido à falta de dependências (eu retirei de um projeto ativo), mas você pode pelo menos ver como criei o instalador.
Ming Slogar
3

Visual Studio 2013 agora oferece suporte a projetos de instalação. A Microsoft enviou uma extensão do Visual Studio para produzir projetos de instalação.

Extensão de projetos do instalador do Visual Studio

Hamid Shahid
fonte
Olá @Hamid, Depois de concluir a instalação da configuração do MSI do formulário de janela, meus arquivos raw (design e codificação) também estão sendo exibidos no local de instalação. Desenvolvi este aplicativo usando o visual studio 2010. Configuração criada com sucesso, mas após a instalação desse MSI esse problema está acontecendo. Por favor me ajude. Desde já, obrigado.
dilipkumar1007
Tentando entender sua pergunta. você criou um projeto de instalação com o visual studio 2010 e não funciona com o visual studio 2013?
Hamid Shahid
2

A Microsoft recomenda usar o "InstallShield Limited Edition para Visual Studio" como substituto para o "Projeto de implantação e instalação" descontinuado - mas não é tão bom e ninguém mais recomenda usá-lo. Mas para configurações simples, e se não for um problema retransmitir em produtos comerciais de terceiros, você pode usá-lo.

A alternativa é usar o XML do Windows Installer (WiX) , mas você tem que fazer muitas coisas manualmente que fizeram o Setup-Project sozinho.

habakuk
fonte
Concordo plenamente com o @Kiquenet - Você pode experimentar o tutorial em wix.tramontana.co.hu
habakuk
Eu instalo o 2015LE dentro do VS 2010, e posso criar um projeto de instalação do IS dentro do VS 2010. Agora como posso chamar esse projeto no Jenkins? O plugin do InstallShield para Jenkins pergunta o caminho para ISCmdBld.exe, que não consigo encontrar em 2015LE.
Jirong Hu de
1

Além do Install Shield e do WiX, existe o Inno Setup . Embora eu não tenha experimentado, ouvi coisas boas a respeito.

MBWise
fonte
1

Vou contar, como resolvi problema quase semelhante. Eu desenvolvi um aplicativo usando o VS 2013 e tentei criar um assistente para que não conseguisse. Mais tarde instalei o VS premium e tentei e falhei.

finalmente usei "ClickOnce" e funcionou bem.

Então eu acredito que aqui também, "CLICKONCE" irá ajudá-lo.

Aswajith
fonte