Aplicativos isolados

Aplicativos isolados são aplicativos auto-descritos instalados com manifestos. Aplicativos isolados podem usar assemblies privados e assemblies compartilhados.

Um aplicativo será considerado totalmente isolado se todos os seus componentes forem assemblies compartilhados lado a lado ou assemblies privados. Ele será chamado parcialmente isolado se usar alguns componentes que não são assemblies lado a lado. Observe que se um aplicativo usa alguns componentes que não são assemblies lado a lado ou usa assemblies privados, o aplicativo pode ser afetado pela instalação ou remoção de outros aplicativos no sistema. Para obter mais informações, consulte Compartilhamento de assembly lado a lado.

Os desenvolvedores são incentivados a criar aplicativos isolados e atualizar aplicativos existentes em aplicativos isolados pelos seguintes motivos:

  • Os aplicativos isolados são mais estáveis e atualizados de forma confiável porque não são afetados pela instalação, remoção ou atualização de outros aplicativos no sistema.
  • Aplicativos isolados podem ser projetados para que sempre sejam executados usando as mesmas versões de assembly com as quais foram criados e testados.
  • Aplicativos isolados podem usar a funcionalidade fornecida pelos assemblies lado a lado disponibilizados pela Microsoft. Para obter mais informações, consulte Assemblies lado a lado da Microsoft com suporte.
  • Aplicativos isolados não estão vinculados ao agendamento de envio de seus assemblies lado a lado porque aplicativos e administradores podem atualizar a configuração após a implantação sem precisar reinstalar o aplicativo. Isso não se aplicaria no caso em que apenas uma versão do assembly está sendo disponibilizada.
  • Um aplicativo totalmente isolado pode ser instalado usando o comando xcopy . O Windows Installer também pode ser usado para instalar um aplicativo isolado sem impacto no registro. Para obter mais informações, consulte Instalação de assemblies Win32.

Em alguns casos, os aplicativos existentes podem ser atualizados em um aplicativo isolado sem precisar reescrever o código do aplicativo. Um manifesto do aplicativo pode ser criado que descreve as dependências do aplicativo em assemblies lado a lado. Se o aplicativo usar componentes que não são assemblies lado a lado, eles poderão ser implantados como assemblies privados. Observe que a possibilidade de fazer isso com componentes de terceiros pode depender do licenciamento, pois o componente precisará ser criado como um assembly. Por exemplo, criando um manifesto do aplicativo e especificando uma dependência dos controles comuns lado a lado (COMCTL32), um aplicativo em execução no Windows XP pode aproveitar o tema do Windows. Você sempre deve testar seu aplicativo para garantir que ele seja compatível com a nova versão do assembly COMCTL32.

Talvez não seja possível atualizar todos os aplicativos existentes em um aplicativo totalmente isolado. Por exemplo, alguns assemblies do sistema WFP (Proteção de Arquivos do Windows) não estão disponíveis como assemblies lado a lado e não podem ser instalados com o aplicativo como um assembly privado. Pode ser possível isolar parcialmente esses aplicativos especificando dependências de assembly lado a lado para alguns dos assemblies do aplicativo em um manifesto do aplicativo.