CORRECÇÃO: Num computador com o .NET Framework 3.5 Service Pack 1 instalado, uma excepção quando uma aplicação chama o método GetOptionalCustomModifiers ou o método GetRequiredCustomModifiers num objecto ParameterInfo de uma interface genérico

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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 957541
Sintomas
Tem uma aplicação que chama o método GetOptionalCustomModifiers ou o método GetRequiredCustomModifiers no objecto ParameterInfo de uma interface genérico. Quando executar esta aplicação num computador que tenha o Microsoft .NET Framework 3.5 Service Pack 1 (SP1) instalado, é emitida uma excepção e recebe uma mensagem de erro semelhante à seguinte:
Ocorreu uma excepção não processada do tipo 'System.ExecutionEngineException' na mscorlib.dll
Além disso, o evento ID 1023 é registado no registo de aplicações. Este evento é semelhante ao seguinte:

.NET Runtime versão 2.0.50727.3053 - erro fatal do motor de execução (734E7706) (80131506)

ID de evento 1000 também poderá ser registado no registo de aplicações. Este evento é semelhante ao seguinte:

Aplicação ConsoleApplication1.exe, versão 1.0.0.0, carimbo de data 0x48dce3f5, módulo mscorwks.dll versão 2.0.50727.3053, carimbo de data/hora 0x4889dc18, código de excepção 0xc0000005, a provocar uma falha em falha falhas desvio 0x0002d2b5, processar id 0 x % 9, aplicação início hora 0 x % 10.

Causa
Este problema ocorre devido a um problema no .NET Framework 3.5 SP1.
Resolução

Informações sobre a correcção

Está disponível a partir da Microsoft uma correcção suportada. No entanto, esta correcção destina-se a corrigir o problema descrito neste artigo. Aplique esta correcção apenas em sistemas que tenham este problema específico. Esta correcção poderá submetida a testes adicionais. Por conseguinte, se não estiver a ser gravemente afectado por este problema, recomendamos que aguarde pela próxima actualização de software que contenha esta correcção.

Para transferir esta correcção da Galeria de código da MSDN, visite o seguinte Web site da Microsoft:

Nota A Galeria de código da MSDN apresenta os idiomas para a qual a correcção está disponível. Se não vir o idioma listado, é porque a página de recursos de galeria de código não está disponível para esse idioma.

Nota Se ocorram problemas adicionais ou se for necessária qualquer resolução de problemas, poderá ter de criar um pedido de assistência separado. Os custos normais do suporte serão aplicados a problemas adicionais e questões de suporte que não se enquadrem esta correcção específica. Para obter uma lista completa dos números de telefone do suporte de cliente do Microsoft ou para criar um pedido serviço separado, visite o seguinte Web site da Microsoft:
Nota Se tem de ter esta correcção para o Windows Server 2008 ou para o Windows Vista Service Pack 1, obter a correcção 957542 em vez disso. Correcção 957542 resolve este problema e está disponível para esses sistemas operativos. Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
957542CORRECÇÃO: Num computador com o .NET Framework 3.5 Service Pack 1, o compilador JIT e o criador de imagem (Ngen.exe) nativo que utilizam o ficheiro mscorjit.dll podem gerar código incorrecto

Pré-requisitos

Tem de ter o .NET Framework 3.5 SP1 instalado para aplicar esta correcção.

Requisito de reinício

Poderá ter de reiniciar o computador se algum dos ficheiros que estão actualizados estão a ser utilizado.

Informações sobre substituição de correcções

Esta correcção não substitui quaisquer outras correcções.

Informações do ficheiro

A versão inglesa desta correcção tem os atributos de ficheiro (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são indicadas na hora universal coordenada (UTC). Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador fuso horário no item data e hora no painel de controlo.
Windows 2000, Windows XP e Windows Server 2003, x 86 versões
Nome de ficheiroVersão do ficheiroTamanho do ficheiroDataTempo
Mscordacwks.dll2.0.50727.3068992,26416-Sep-200813: 13
Mscorlib.dll2.0.50727.30684,546,56016-Sep-200813: 13
Mscorwks.dll2.0.50727.30685,815,80816-Sep-200813: 13
Windows 2000, Windows XP e Windows Server 2003, versões x 64
Nome de ficheiroVersão do ficheiroTamanho do ficheiroDataTempoPlataforma
Mscordacwks.dll2.0.50727.3068992,26416-Sep-200813: 13x 86
Mscorlib.dll2.0.50727.30684,546,56016-Sep-200813: 13x 86
Mscorwks.dll2.0.50727.30685,815,80816-Sep-200813: 13x 86
Mscordacwks.dll2.0.50727.30681,767,94416-Sep-200810: 33x 64
Mscorlib.dll2.0.50727.30684,562,94416-Sep-200810: 33x 64
Mscorwks.dll2.0.50727.306810,079,74416-Sep-200810: 33x 64
Windows 2000, Windows XP e Windows Server 2003, versões IA-64
Nome de ficheiroVersão do ficheiroTamanho do ficheiroDataTempoPlataforma
Mscordacwks.dll2.0.50727.3068992,26416-Sep-200813: 13x 86
Mscorlib.dll2.0.50727.30684,546,56016-Sep-200813: 13x 86
Mscorwks.dll2.0.50727.30685,815,80816-Sep-200813: 13x 86
Mscordacwks.dll2.0.50727.30683,087,88016-Sep-200810: 44IA-64
Mscorlib.dll2.0.50727.30684,005,88816-Sep-200810: 44IA-64
Mscorwks.dll2.0.50727.306820,153,85616-Sep-200810: 44IA-64
Ponto Da Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".
Mais Informação

Passos para reproduzir o problema

Para reproduzir este problema, crie um projecto do Microsoft Visual C# e, em seguida, execute o seguinte código num computador que tem o .NET Framework 3.5 SP1 instalado.
using System;namespace GetCustomModifiersBug{    public interface IGenericInterface<T1, T2>    {        void GenericIfcMethod<T3>(T3 t3);    }    class Program    {        static void Main()        {                            Type ifc = typeof(IGenericInterface<int, int>);                // Either of the following lines on their own will cause the problem                ifc.GetMethod("GenericIfcMethod").GetParameters()[0].GetOptionalCustomModifiers();                ifc.GetMethod("GenericIfcMethod").GetParameters()[0].GetRequiredCustomModifiers();                               }    }}
Referências
Para obter mais informações sobre a terminologia de actualização de software, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
824684Descrição da terminologia padrão utilizada para descrever actualizações de software da Microsoft

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 957541 - Última Revisão: 10/22/2008 16:01:20 - Revisão: 1.1

Microsoft .NET Framework 3.5 Service Pack 1

  • kbmt kbexpertiseadvanced kbfix kbqfe kbhotfixserver KB957541 KbMtpt
Comentários