Sintomas
Considere o seguinte cenário:
-
No Microsoft.NET Framework 2.0 Service Pack 2 (SP2) ou o Microsoft.NET Framework 3.5 Service Pack 1 (SP1), use o objeto BinaryFormatter para serializar e desserializar um tipo genérico em um assembly.
-
O assembly for compartilhado entre o servidor e o cliente e o assembly tem um nome forte.
-
As versões de compilação do assembly são diferentes entre o servidor e o cliente.
Nesse cenário, você recebe uma das seguintes mensagens de erro de exceção ao tentar desserializar o fluxo do assembly:
Mensagem de erro 1
System.Runtime.Serialization.SerializationException: Não é possível localizar o assembly.
Mensagem de erro 2
System.IO.FileLoadException: Não foi possível carregar arquivo ou assembly ' comum, versão = identificação de versão, cultura = neutral, PublicKeyToken = número da chave ou uma de suas dependências. Definição de manifesto do assembly localizado não corresponde à referência do assembly. (Exceção de HRESULT: 0x80131040) na System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) se você registrou o assembly no GAC, você receberá a seguinte exceção: System. InvalidCastException : Argumento retorno tem um tipo inválido.
Observações
-
Esse problema não ocorre quando você usa o objeto SoapFormatter .
-
Esse problema ocorre mesmo se você define o valor de FormatterAssemblyStyle quando serializar e desserializar.
Resolução
Informações de substituição do hotfix
O hotfix que corresponde ao KB960442 foi substituído com o hotfix KB981574, que contém todas as correções que foram anteriormente incluídas no KB960442. Você deve usar o hotfix KB981574 para corrigir os problemas descritos nos KB960442. Para obter mais informações, clique no número abaixo para ler os artigos na Base de Dados de Conhecimento Microsoft:
981574 A tela de apresentação permanece aberta mais do que o normal quando você tenta iniciar o Excel em um computador que possui o.NET Framework 3.5 SP1 instalado
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".
Informações adicionais
Para obter informações adicionais sobre a terminologia da atualização de segurança, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft (a página pode estar em inglês):
824684 Descrição da terminologia padrão utilizada para descrever as atualizações de software da Microsoft