CORRECÇÃO: Incorretos métodos são chamados quando você chamar algumas APIs COM incluídos em um aplicativo de 64 bits baseado no .NET Framework 2.0

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

Neste artigo

Sintomas

Considere o seguinte cenário:
  • Um aplicativo de 64 bits que é criado usando o Microsoft .NET Framework 2.0 chama algumas APIs COM.
  • As APIs COM tiver várias instâncias do mesmo método.
  • O método usa o atributo lcid .
  • Você usa uma das opções a seguir para chamar as APIs de COM:
    • A interoperabilidade de COM gerenciados
    • Plataforma Invoke (P/Invoke) código
Nesse cenário, são chamados de métodos incorretos.

Por exemplo, considere o seguinte cenário:
  • Você tiver um aplicativo de 64 bits que usa uma versão de 64 bits do common language runtime (CLR).
  • O aplicativo tem duas funções P/Invoke gerenciadas que têm a mesma assinatura. A assinatura aponta para um único método nativo.
  • As funções de dois P/Invoke contam com a classe LCIDConversionAttribute para suporte de localização.
  • Execute o aplicativo.
Nesse cenário, você receberá uma mensagem de erro semelhante à seguinte:
System.Runtime.InteropServices.COMException (0x800706F4): Um ponteiro de referência nula foi passado para o stub. (Exceção de HRESULT: 0x800706F4)

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 Windows Vista ou o .NET Framework 2.0 service pack 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.

Pré-requisitos

Você deve ter um dos seguintes itens instalado para aplicar esse hotfix:
  • Windows Vista Service Pack 1
  • O .NET Framework 2.0 Service Pack 1

Requisitos de reinicialização

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

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

Esse hotfix não substitui outros hotfixes.

Informações sobre o arquivo

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 de 32 bits, em um computador que não está executando o Windows Vista
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Cordacwks.dll2.0.50727.1812822,28029 De janeiro de 200810: 48x 86
Mscorlib.dll2.0.50727.18124,345,85629 De janeiro de 200810: 48x 86
Mscorwks.dll2.0.50727.18125,852,67229 De janeiro de 200810: 48x 86
O .NET Framework 2.0, versões baseadas em Itanium, em um computador que não está executando o Windows Vista
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Cordacwks.dll2.0.50727.1812822,28029 De janeiro de 200810: 48x 86
Cordacwks.dll2.0.50727.18122,769,41629 De janeiro de 200802: 26IA-64
Mscorlib.dll2.0.50727.18124,345,85629 De janeiro de 200810: 48x 86
Mscorlib.dll2.0.50727.18123,997,69629 De janeiro de 200802: 26IA-64
Mscorwks.dll2.0.50727.18125,852,67229 De janeiro de 200810: 48x 86
Mscorwks.dll2.0.50727.181221,686,27229 De janeiro de 200802: 26IA-64
O .NET Framework 2.0, versões de 64 bits, em um computador que não está executando o Windows Vista
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Cordacwks.dll2.0.50727.18101,652,74414 De janeiro de 200823: 36x 64
Cordacwks.dll2.0.50727.1812822,28029 De janeiro de 200810: 48x 86
Mscorlib.dll2.0.50727.18104,345,85614 De janeiro de 200823: 36x 64
Mscorlib.dll2.0.50727.18124,345,85629 De janeiro de 200810: 48x 86
Mscorwks.dll2.0.50727.181010,547,20014 De janeiro de 200823: 36x 64
Mscorwks.dll2.0.50727.18125,852,67229 De janeiro de 200810: 48x 86
O .NET Framework 2.0 em um computador que esteja executando uma versão de 32 bits do Windows Vista com Service Pack 1
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Mscorlib.dll2.0.50727.18264,345,85606-Maio de 200822: 18x 86
Mscordacwks.dll2.0.50727.1826822,28006-Maio de 200822: 18x 86
Mscorwks.dll2.0.50727.18265,852,67201 De maio de 200823: 34x 86
O .NET Framework 2.0 em um computador que esteja executando uma versão de 64 bits do Windows Vista com Service Pack 1
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
Mscorlib.dll2.0.50727.18264,345,85605 De maio de 200822: 13x 64
Mscordacwks.dll2.0.50727.18261,652,74405 De maio de 200822: 13x 64
Mscorwks.dll2.0.50727.182610,543,10401 De maio de 200823: 36x 64
Mscorlib.dll2.0.50727.18264,345,85606-Maio de 200822: 18x 86
Mscordacwks.dll2.0.50727.1826822,28006-Maio de 200822: 18x 86
Mscorwks.dll2.0.50727.18265,852,67201 De maio de 200823: 34x 86

Situação

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

Mais Informações

Para obter mais informações sobre P/Invoke, visite o seguinte site da Web Microsoft Developer Network (MSDN):
http://msdn.microsoft.com/en-us/library/aa719104(VS.71).aspx
Para obter mais informações sobre o atributo lcid , visite o seguinte site da MSDN:
http://msdn.microsoft.com/en-us/library/aa367067(VS.85).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

Propriedades

ID do artigo: 947148 - Última revisão: quarta-feira, 4 de junho de 2008 - Revisão: 1.1
A informação contida neste artigo aplica-se a:
  • Microsoft .NET Framework 2.0
Palavras-chave: 
kbmt kbexpertiseadvanced kbfix kbqfe kbhotfixserver KB947148 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: 947148

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