CORRECÇÃO: Mensagem de erro quando você usa variáveis de ambiente DEVPATH em um aplicativo ASP.NET do .NET Framework 2.0: "Não foi possível carregar arquivo ou assembly '<assemblyname>' ou uma de suas dependências"

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

Neste artigo

Sintomas

Quando assemblies são carregados pela primeira vez em um aplicativo ASP.NET do Microsoft .NET Framework 2.0, você receber a seguinte mensagem de erro:
System.IO.FileNotFoundException
Não foi possível carregar arquivo ou assembly ' AssemblyName ' ou uma de suas dependências. O sistema não é possível localizar o arquivo especificado.
Poderá receber essa mensagem de erro se as seguintes condições forem verdadeiras:
  • O aplicativo da Web ASP.NET do .NET Framework 2.0 faz referência a um ou mais assemblies de biblioteca de classe.
  • Crie variáveis de ambiente DEVPATH para que esses assemblies localizar a versão dos assemblies que você deseja usar.
Esse problema não ocorre se você usar o Microsoft ASP.NET 1.1 para desenvolver o aplicativo.

Resolução

Informações sobre o hotfix

Um hotfix com suporte foi disponibilizada pela Microsoft. No entanto, destina-se a corrigir o problema descrito neste artigo. Aplique-o somente aos sistemas que apresentarem esse problema específico. Esta correcção poderá submetida a testes adicionais. Portanto, se você não tiver sido gravemente afetado por esse problema, recomendamos que você aguarde o próximo service pack do Microsoft .NET Framework 2.0 que contém esse hotfix.

Para resolver esse problema imediatamente, contate o Microsoft Customer Atendimento para obter o hotfix. Para obter uma lista completa de telefones do serviço de suporte a clientes da Microsoft e informações sobre os custos de suporte, visite o seguinte site:
http://support.microsoft.com/contactus/?ws=support
Observação Em alguns casos, as taxas cobradas pelas ligações para chamadas de suporte podem ser canceladas se um profissional de suporte da Microsoft determinar que uma atualização específica resolverá o problema. Os custos normais de suporte serão aplicados a questões e problemas que não se qualificam à atualização específica em questão de suporte adicionais.

Informações sobre reinicialização

Não é necessário reiniciar o computador após aplicar esse hotfix.

Informações sobre a substituição do hotfix

Esse hotfix substitui os hotfixes descritos nos seguintes artigos na Base de dados de Conhecimento da Microsoft:
917507CORRECÇÃO: Compilação JIT pode demorar muito mais quando você executa um aplicativo .NET Framework 2.0 em um computador de 64 bits
917882CORRECÇÃO: Um método sincronizado com textos explicativos de segurança talvez não salve um valor de retorno após o controle retorna para a função chamada em um aplicativo que é criado usando a versão de 64 bits do .NET Framework 2.0
919514CORRECÇÃO: Quando você usa o Assembler MSIL no .NET Framework 2.0 para gerar um arquivo PE do código MSIL, o arquivo PE pode fechar inesperadamente e você pode receber uma mensagem de erro de violação de acesso
923319CORRECÇÃO: Mensagem de erro quando você compilar código MSIL em um programa executável no .NET Framework 2.0: "IndexOutOfRangeException"
928208CORRECÇÃO: Aplicativos personalizados que usam o Visual Studio para aplicativos Visual Basic Runtime podem não conseguir para compilar as macros ou para executar macros

Informações sobre o arquivo de hotfix

Esse hotfix contém apenas os arquivos que são necessárias para corrigir os problemas que este artigo lista. Este hotfix pode não conter todos os arquivos que você deve ter para actualizar completamente um produto para a compilação mais recente.

A versão em inglês deste hotfix tem atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário no item Data e hora no painel de controle.
O .NET Framework 2.0, versões com base em 86 x
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Mscordacwks.dll2.0.50727.796802,30424 De janeiro de 200718: 54x 86
Mscorjit.dll2.0.50727.796326,65624 De janeiro de 200718: 54x 86
Mscorlib.dll2.0.50727.7964,308,99224 De janeiro de 200718: 54x 86
Mscorpe.dll2.0.50727.796102,91224 De janeiro de 200718: 54x 86
Normalization.dll2.0.50727.79615.36024 De janeiro de 200718: 54x 86
Peverify.dll2.0.50727.796136,19224 De janeiro de 200718: 54x 86
Sos.dll2.0.50727.796382,46424 De janeiro de 200718: 54x 86
Vsavb7rt.dll8.0.50727.7961,330,68824 De janeiro de 200718: 54x 86
O .NET Framework 2.0, versões com base em 64 x
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Mscordacwks.dll2.0.50727.7961,597,44024 De janeiro de 200710: 43x 64
Mscordacwks.dll2.0.50727.796802,30424 De janeiro de 200718: 54x 86
Mscorjit.dll2.0.50727.7961,587,71224 De janeiro de 200710: 41x 64
Mscorjit.dll2.0.50727.796326,65624 De janeiro de 200718: 54x 86
Mscorlib.dll2.0.50727.7963,960,83224 De janeiro de 200714: 00x 64
Mscorlib.dll2.0.50727.7964,308,99224 De janeiro de 200718: 54x 86
Mscorpe.dll2.0.50727.796157,18424 De janeiro de 200710: 36x 64
Mscorpe.dll2.0.50727.796102,91224 De janeiro de 200718: 54x 86
Mscorpjt.dll2.0.50727.7962,004,99224 De janeiro de 200710: 42x 64
Mscorwks.dll2.0.50727.79610,320,89624 De janeiro de 200710: 39x 64
Mscorwks.dll2.0.50727.7965,625,34424 De janeiro de 200718: 54x 86
Normalization.dll2.0.50727.79618,43224 De janeiro de 200710: 40x 64
Normalization.dll2.0.50727.79615.36024 De janeiro de 200718: 54x 86
Peverify.dll2.0.50727.796205,82424 De janeiro de 200710: 41x 64
Peverify.dll2.0.50727.796136,19224 De janeiro de 200718: 54x 86
Sos.dll2.0.50727.796480,76824 De janeiro de 200710: 50x 64
Sos.dll2.0.50727.796382,46424 De janeiro de 200718: 54x 86
Vsavb7rt.dll8.0.50727.7961,330,68824 De janeiro de 200718: 54x 86
O .NET Framework 2.0, versões de arquitetura Itanium
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Mscordacwks.dll2.0.50727.7962,719,23224 De janeiro de 200710: 45IA-64
Mscordacwks.dll2.0.50727.796802,30424 De janeiro de 200718: 54x 86
Mscorjit.dll2.0.50727.7962,705,92024 De janeiro de 200710: 43IA-64
Mscorjit.dll2.0.50727.796326,65624 De janeiro de 200718: 54x 86
Mscorlib.dll2.0.50727.7963,960,83224 De janeiro de 200714: 10IA-64
Mscorlib.dll2.0.50727.7964,308,99224 De janeiro de 200718: 54x 86
Mscorpe.dll2.0.50727.796313,85624 De janeiro de 200710: 36IA-64
Mscorpe.dll2.0.50727.796102,91224 De janeiro de 200718: 54x 86
Mscorpjt.dll2.0.50727.7963,501,05624 De janeiro de 200710: 43IA-64
Mscorwks.dll2.0.50727.79621,309,44024 De janeiro de 200710: 41IA-64
Mscorwks.dll2.0.50727.7965,625,34424 De janeiro de 200718: 54x 86
Normalization.dll2.0.50727.79644,03224 De janeiro de 200710: 42IA-64
Normalization.dll2.0.50727.79615.36024 De janeiro de 200718: 54x 86
Peverify.dll2.0.50727.796383,48824 De janeiro de 200710: 43IA-64
Peverify.dll2.0.50727.796136,19224 De janeiro de 200718: 54x 86
Sos.dll2.0.50727.796862,72024 De janeiro de 200710: 53IA-64
Sos.dll2.0.50727.796382,46424 De janeiro de 200718: 54x 86
Vsavb7rt.dll8.0.50727.7961,330,68824 De janeiro de 200718: 54x 86
Windows Vista, versões com base em 86 x
Recolher esta tabelaExpandir esta tabela
Nome de arquivo Versão do arquivo Tamanho do arquivo Data Tempo Plataforma
Mscorlib.dll 2.0.50727.821 4,308,992 22 De março de 2007 22: 14 x 86
Mscordacwks.dll 2.0.50727.821 802,304 16 De abril de 2007 22: 53 x 86
Mscorjit.dll 2.0.50727.312 326,656 16 De abril de 2007 22: 53 x 86
Mscorpe.dll 2.0.50727.312 102,912 16 De abril de 2007 22: 53 x 86
Mscorwks.dll 2.0.50727.821 5,633,024 16 De abril de 2007 22: 53 x 86
Normalization.dll 2.0.50727.821 15.360 16 De abril de 2007 22: 53 x 86
Peverify.dll 2.0.50727.312 136,192 16 De abril de 2007 22: 53 x 86
Sos.dll 2.0.50727.312 382,464 16 De abril de 2007 22: 53 x 86
Vsavb7rt.dll 8.0.50727.812 1,330,688 16 De abril de 2007 22: 53 x 86
Windows Vista, versões com base em 64 x
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Mscorlib.dll2.0.50727.8213,960,83222 De março de 200722: 13x 64
Mscordacwks.dll2.0.50727.8211,597,44022 De março de 200722: 13x 64
Mscorjit.dll2.0.50727.3121,588,22407-Janeiro de 200705: 30x 64
Mscorpe.dll2.0.50727.312157,18407-Janeiro de 200705: 30x 64
Mscorwks.dll2.0.50727.82110,334,20822 De março de 200722: 13x 64
Normalization.dll2.0.50727.82118,43222 De março de 200722: 13x 64
Peverify.dll2.0.50727.312205,82407-Janeiro de 200705: 31x 64
Sos.dll2.0.50727.312480,76807-Janeiro de 200705: 31x 64
Mscorlib.dll2.0.50727.8214,308,99222 De março de 200722: 14x 86
Mscordacwks.dll2.0.50727.821802,30416 De abril de 200722: 53x 86
Mscorjit.dll2.0.50727.312326,65616 De abril de 200722: 53x 86
Mscorpe.dll2.0.50727.312102,91216 De abril de 200722: 53x 86
Mscorwks.dll2.0.50727.8215,633,02416 De abril de 200722: 53x 86
Normalization.dll2.0.50727.82115.36016 De abril de 200722: 53x 86
Peverify.dll2.0.50727.312136,19216 De abril de 200722: 53x 86
Sos.dll2.0.50727.312382,46416 De abril de 200722: 53x 86

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Mais Informações

Você deve aplicar esse hotfix aos assemblies mencionados explicitamente partir de outros conjuntos de módulos ou aplicativo ASP.NET.

Às vezes, os assemblies que existem no local DEVPATH não podem ser encontrados, mesmo que você aplicou esse hotfix. Por exemplo, um aplicativo contém o código a seguir para fazer referência o assembly DevPathClassLibrary.dll e para fazer referência o assembly MyCustomControl.dll por seus names.
<%@ Assembly Name="DevPathClassLibrary" %>
<%@ Register TagPrefix="SimpleControlSamples" Namespace="MyCustomControl" Assembly="MyCustomControl" %>
se esses assemblies existirem no local DEVPATH, os assemblies não são encontrados. Isso ocorre porque versões posteriores do common language runtime (CLR) não oferecem suporte o carregamento de módulos (assemblies) por nome parcial. Isto é uma alteração de design de versões anteriores do CLR.

Para contornar essa alteração, verifique se todos os assemblies são referenciados usando nomes parciais que nomes de alta segurança. Além disso, verifique se os assemblies usando o elemento qualifyAssembly no arquivo de configuração para o aplicativo. Quando os assemblies usa o elemento qualifyAssembly, o aplicativo redireciona o nome parcial para o assembly de nome forte que você instalar no cache global de assemblies. Em seguida, você pode colocar a versão do assembly que você deseja usar no local DEVPATH. O aplicativo carrega esse assembly em vez da cópia que existe no cache global de assemblies.

Para obter mais informações sobre o local de DEVPATH, visite os seguintes sites da Microsoft Developer Network (MSDN):
http://msdn2.microsoft.com/en-us/library/cd71chf0(vs.80).aspx

http://msdn2.microsoft.com/en-us/library/cskzh7h6.aspx
Para obter mais informações sobre terminologia de atualização de software, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software

Referências

Para obter mais informações sobre esse problema, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
915430CORRECÇÃO: Nem todos os caminhos que são especificados na variável de ambiente DEVPATH serão considerados pela infra de estrutura de ligação .NET (fusão) no .NET Framework 2.0

Propriedades

ID do artigo: 931338 - Última revisão: segunda-feira, 3 de dezembro de 2007 - Revisão: 1.5
A informação contida neste artigo aplica-se a:
  • Microsoft .NET Framework 2.0
Palavras-chave: 
kbmt kbvistasp1fix kbexpertiseadvanced kbfix kbpubtypekc kbqfe kbhotfixserver KB931338 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 931338

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