A definição de manifesto do assembly localizado não corresponde à referência do assembly

Este artigo ajuda você a resolve um erro (a definição de manifesto do assembly localizado não corresponde à referência de assembly) que ocorre quando um aplicativo ClickOnce não é executado.

Versão original do produto: .NET Framework 3.5 Service pack 1
Número de KB original: 971052

Sintomas

Quando você instala a atualização em um aplicativo ClickOnce, o aplicativo não foi executado com pistas de alguns binários mais antigos são usados com a seguinte mensagem de erro:

System.IO.FileLoadException: não foi possível carregar arquivo ou assembly XXXX, Version=x.x.x.x, Culture=neutral, PublicKeyToken=... ou uma de suas dependências. A definição de manifesto do assembly localizado não corresponde à referência do assembly. (Exceção de HRESULT: 0x80131040)

Motivo

Quando o Microsoft .NET Framework 3.5 Service pack 1 estiver instalado e o repositório ClickOnce for usado pela primeira vez, os arquivos cdf-ms poderão ser excluídos. Isso também pode ser causado pela exclusão da chave HKEY_CURRENT_USER\Software\Classes\Software\Microsoft\Windows\CurrentVersion\Deployment\ClickOnce35SP1Updatedo registro . Os arquivos cdf-ms ausentes farão com que o ClickOnce compartilhe incorretamente o assembly forte nomeado com a mesma versão, mas com hash de arquivo diferente.

Resolução

Para evitar o problema antes que ele aconteça, verifique se todos os assemblies compartilhados que você está usando no aplicativo ClickOnce atualizado têm uma nova versão de assembly.

Se o problema já tiver acontecido, você precisará limpar o cache online executando mage.exe -cc, desinstalar todas as versões de aplicativos instalados que possam ter um assembly nomeado forte com a mesma versão e reinstalar o aplicativo.

Mage.exe está disponível em vários locais, incluindo os seguintes:

  • O SDK do .NET Framework 2.0

    O SDK .NET Framework 2.0 está disponível como um componente da instalação do Visual Studio 2005.

  • O SDK do Windows do Windows Vista

    O SDK do Windows do Windows Vista pode ser baixado no Centro de Download da Microsoft.

  • Visual Studio 2008

    Versões posteriores de Mage.exe e MageUI.exe são incluídas como um componente da instalação do Visual Studio 2008.