Aplicativos que não usam conjuntos lado a lado atendidos globalmente podem ser vulneráveis a problemas corrigidos por uma atualização de software Microsoft

Traduções deste artigo Traduções deste artigo
ID do artigo: 835322 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

INTRODUÇÃO

Em computadores com Microsoft Windows Server 2003, os administradores podem ignorar os conjuntos lado a lado atualizados globalmente para um determinado aplicativo. Já em computadores com Microsoft Windows XP, os desenvolvedores de software e administradores podem ignorar os conjuntos lado a lado atualizados globalmente para um determinado aplicativo. No entanto, essa possibilidade pode tornar o aplicativo vulnerável a problemas que poderiam ser corrigidos por uma atualização de software global da Microsoft. Por isso, é altamente recomendável que os desenvolvedores de software e os administradores não usem esse recurso.

Não recomendamos que sejam usados conjuntos lado a lado junto com a técnica de redirecionamento DLL/COM do Windows. Consulte a seção "Mais Informações" para obter detalhes.

Mais Informações

Um conjunto lado a lado contém diversos recursos; dentre eles, podem estar um ou mais arquivos DLL, classes de janela, servidores COM, bibliotecas de tipos ou interfaces. Esses recursos são sempre fornecidos em conjunto com os aplicativos. Um conjunto lado a lado é selecionado por um manifesto de aplicativo XML possivelmente situado em um dos seguintes locais:
  • Um recurso no arquivo executável para o aplicativo.
  • Um arquivo com uma extensão ".exe.manifest" instalado na mesma pasta do arquivo executável do aplicativo.
  • Uma configuração no banco de dados Microsoft Application Compatibility. Se um aplicativo for fornecido pelo banco de dados Microsoft Application Compatibility, o manifesto prevalecerá em relação ao fornecido pelo aplicativo .
Após a implantação, os desenvolvedores de software ou administradores podem atualizar a configuração do conjunto a partir de uma configuração do aplicativo, usando um arquivo de configuração de aplicativo. Um arquivo de configuração de aplicativo é um arquivo com a extensão ".exe.config" localizado na mesma pasta do arquivo executável do aplicativo. Esse arquivo de configuração pode ser usado para redirecionar um aplicativo específico (deixar de usar a versão de um conjunto lado a lado e passar a usar outra versão do mesmo conjunto) sem precisar compilá-lo novamente. Por exemplo, um administrador ou desenvolvedor pode atualizar, ou "optar por", um aplicativo para usar um conjunto lado a lado mais recente não usado em todos os aplicativos, usando uma diretiva de publicação. O conjunto lado a lado mais recente substitui as versões anteriores do conjunto para o aplicativo especificado.

Além disso, um administrador de Windows Server 2003 ou um administrator ou desenvolvedor de software para Windows XP também pode ignorar, ou "não optar por", quaisquer conjuntos lado a lado atualizados globalmente para um determinado aplicativo, em vez de remover o conjunto para todos os aplicativos. Para fazer isso, um administrador pode atualizar o arquivo de configuração de aplicativo para incluir um elemento <publisherPolicy apply="no"/>.

Para determinar se um arquivo de configuração de aplicativo está sendo usado para ignorar conjuntos lado a lado atualizados globalmente para um determinado aplicativo em um computador com Windows XP, procure o elemento <publisherPolicy apply="no"/> em um arquivo .config com o mesmo nome do arquivo executável. Por exemplo, procure o elemento <publisherPolicy apply="no"/> no arquivo Aplicativo.exe.config para saber se os conjuntos lado a lado atualizados globalmente estão sendo ignorados para um aplicativo que useAplicativo.exe como seu arquivo executável. Esse arquivoAplicativo.exe.config é instalado no mesmo local do manifesto do aplicativo.

Esse recurso permite que desenvolvedores de software e administradores desativem de forma seletiva uma atualização de software da Microsoft para um determinado aplicativo que não esteja funcionando corretamente no momento da instalação da atualização de software. (Por isso, os desenvolvedores ou administradores não precisam remover a atualização de software para todos os aplicativos). Porém, se um aplicativo ignorar dessa forma, ele poderá ficar vulnerável aos problemas corrigidos pela atualização de software.

Observação Isso exige uma entrada no banco de dados Microsoft Application Compatibility em computadores com Windows Server 2003. Essa configuração pode ser adicionada apenas por administradores ou pela Microsoft em uma atualização de software.

Existem métodos adicionais que podem ser executados pelo autor do aplicativo ou por alguém com controle do diretório do aplicativo para ignorar a atualização global.

Tenha cuidado ao usar a técnica de redirecionamento DLL/COM do Windows

Esta técnica chama normalmente um arquivo .local para ser implantado com o aplicativo. Esse requisito ajuda a reduzir os problemas de compatibilidade do aplicativo.

Observação O arquivo .local faz com que o sistema prefira a cópia do DLL na pasta do aplicativo em vez da cópia global, o que pode ser uma atualização de serviço muito útil. Recomendamos que desenvolvedores de software e administradores usem esse recurso com cautela, ou não usem, quando o aplicativo estiver usando um conjunto lado a lado.

Para obter mais informações sobre a técnica de redirecionamento DLL/COM do Windows, visite o seguinte site da Microsoft (site em inglês):
http://msdn2.microsoft.com/en-us/library/aa375142.aspx


Práticas recomendadas para desenvolvedores de software que usem conjuntos lado a lado
  • Forneça seu aplicativo com um manifesto de aplicativo que liste a versão do conjunto lado a lado com o qual o seu aplicativo foi criado ou testado.
  • Sempre implante o arquivo de manifesto do conjunto lado a lado com as DLLs lado a lado, mesmo se escolher implantar na pasta do aplicativo.
  • Se instalar seu aplicativo em um computador executando Microsoft Windows 2000 ou versões anteriores do Windows, não forneça o conjunto lado a lado na pasta do seu aplicativo para esses sistemas operacionais. Em vez disso, os conjuntos lado a lado devem ser usados a partir da pasta do sistema.
  • Não use o recurso .local, também conhecido como redirecionamento DLL/COM no Windows.
  • Não execute a função LoadLibrary nas DLLs de conjunto lado a lado com um caminho completo explícito. Em vez disso, use o vinculamento estático ou use a função LoadLibrary com o nome de arquivo sem formatação da DLL. Por exemplo, use ?Gdiplus.dll? como o nome de arquivo.
Para obter mais informações, visite o seguinte site da Microsoft (site em inglês):
http://msdn2.microsoft.com/en-us/library/ms997620.aspx

Referências

Para obter mais informações sobre aplicativos isolados e conjuntos lado a lado, visite o seguinte site da Microsoft (em inglês):
http://msdn2.microsoft.com/en-us/library/aa375193.aspx
Para obter informações adicionais, clique no número a seguir para ler o artigo na Base de Dados de Conhecimento da Microsoft:
824684 Descrição da terminologia padrão usada para descrever as atualizações de software da Microsoft

Propriedades

ID do artigo: 835322 - Última revisão: sábado, 1 de dezembro de 2007 - Revisão: 4.3
A informação contida neste artigo aplica-se a:
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows XP Media Center Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional x64 Edition
Palavras-chave: 
kbinfo kbtshoot kbsecurity kbprb KB835322

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com