Partilhar via


Conheça o seu instalador

Este artigo lista as coisas que você precisa saber antes de converter seu instalador existente em um MSIX. Talvez você não precise fazer muito para preparar seu aplicativo para o processo de embalagem, mas se algum dos itens abaixo se aplicar ao seu aplicativo, você precisará abordá-lo antes de embalá-lo.

  • Seu aplicativo tem um serviço. Suportamos a conversão de aplicações com serviços, mas é importante ter em mente as limitações para converter um serviço. Após a conversão, você precisará de elevação de administrador para instalar o MSIX que contém um serviço. Você pode converter um aplicativo com serviços a partir da versão 1.2019.1220.0 da MSIX Packaging Tool e pode implantar o MSIX com serviços a partir da versão de primavera de 2020 do Windows 10.

  • O instalador requer uma reinicialização. Se o instalador exigir uma reinicialização, isso é suportado na MSIX Packaging Tool a partir da versão 1.2019.701.0. Se o instalador retornar um código de saída incomum para indicar que ele precisa ser reiniciado, você deverá adicioná-lo à seção de códigos de saída de reinicialização das configurações da MSIX Packaging Tool.

  • Seu aplicativo .NET requer uma versão do .NET Framework anterior à 4.6.2. Se você estiver empacotando um aplicativo .NET, recomendamos que seu aplicativo tenha como destino o .NET Framework 4.6.2 ou posterior. A capacidade de instalar e executar aplicativos de área de trabalho empacotados foi introduzida pela primeira vez no Windows 10, versão 1607 (também chamada de Atualização de Aniversário), e esta versão do sistema operacional inclui o .NET Framework 4.6.2 por padrão. As versões posteriores do SO incluem versões posteriores do .NET Framework. Para obter uma lista completa de quais versões do .NET estão incluídas em versões posteriores do Windows 10, consulte este artigo.

    Espera-se que as versões de destino do .NET Framework anteriores à 4.6.2 em aplicativos de área de trabalho empacotados funcionem na maioria dos casos. No entanto, se apontares para uma versão anterior à 4.6.2, deves testar exaustivamente a tua aplicação de desktop empacotada antes de a distribuir aos utilizadores.

    • 4.0 - 4.6.1: Espera-se que os aplicativos destinados a essas versões do .NET Framework sejam executados sem problemas na versão 4.6.2 ou posterior. Portanto, esses aplicativos devem ser instalados e executados sem alterações no Windows 10, versão 1607 ou posterior com a versão do .NET Framework incluída no sistema operacional.

    • 2.0 e 3.5: Em nossos testes, os aplicativos de área de trabalho empacotados destinados a essas versões do .NET Framework geralmente funcionam, mas podem apresentar problemas de desempenho em alguns cenários. Para que esses aplicativos empacotados sejam instalados e executados, o recurso .NET Framework 3.5 deve ser instalado na máquina de destino (esse recurso também inclui o .NET Framework 2.0 e 3.0). Você também deve testar esses aplicativos completamente depois de empacotá-los.

  • Seu aplicativo requer um driver. MSIX não suporta drivers.

  • Seu aplicativo grava na pasta AppData ou no registro com a intenção de compartilhar dados com outro aplicativo. Após a conversão, o AppData é redirecionado para o repositório de dados do aplicativo local, que é um repositório privado para cada aplicativo.

    Todas as entradas que seu aplicativo grava no hive do Registro HKEY_LOCAL_MACHINE são redirecionadas para um arquivo binário isolado e todas as entradas que seu aplicativo grava no hive do Registro HKEY_CURRENT_USER são colocadas em um local privado por usuário e por aplicativo. Para obter mais detalhes sobre o redirecionamento de arquivo e registro, consulte Os bastidores do Desktop Bridge.

  • Seu aplicativo grava no diretório de instalação do seu aplicativo. Por exemplo, seu aplicativo grava em um arquivo de log que você colocou no mesmo diretório que seu exe. Isso não é suportado porque a pasta está protegida. Recomendamos escrever em outro local, como o repositório de dados de aplicativos local. Nós adicionamos uma capacidade que permite isso em 1809 e mais tarde.

  • Seu aplicativo usa o diretório de trabalho atual. Durante a execução, a sua aplicação de desktop empacotada não obterá o mesmo diretório de trabalho especificado anteriormente no atalho .LNK do seu desktop. Você precisa alterar seu CWD em tempo de execução se ter o diretório correto é importante para que seu aplicativo funcione corretamente.

  • O seu aplicativo instala e carrega assemblies da pasta paralela do Windows. Por exemplo, seu aplicativo usa bibliotecas de tempo de execução C VC8 ou VC9 e está vinculando-as dinamicamente da pasta lado a lado do Windows, o que significa que seu código está usando os arquivos DLL comuns de uma pasta compartilhada, como C:\Windows\WinSxS. Isso não é suportado. Você precisará vinculá-los estaticamente, vinculando-os aos arquivos de biblioteca redistribuíveis diretamente em seu código.

Outras considerações

  • Reempacotar seu instalador na arquitetura adequada. Se o instalador se destina a ser instalado numa máquina x86. Certifique-se de reempacotar seu instalador em uma máquina x86. Isto aplica-se ao instalador destinado a máquinas x64.

    Observação

    Se seu aplicativo precisar gravar no diretório de instalação ou usar o diretório de trabalho atual, você também pode considerar adicionar uma correção de tempo de execução usando o Package Support Framework ao seu pacote. Para obter mais detalhes, consulte este artigo.