CORRECÇÃO: Poderá receber uma 0x800706F7 mensagem de erro quando efectuar uma chamada de método COM que tem um parâmetro BSTR

Traduções de Artigos Traduções de Artigos
Artigo: 895321 - Ver produtos para os quais este artigo se aplica.
importante Este artigo contém informações sobre como modificar o registo. Certifique-se de que cópia de segurança do registo antes de o modificar. Certifique-se que sabe como restaurar o registo se ocorrer um problema. Para obter mais informações sobre como efectuar uma cópia de segurança, restaurar e modificar o registo, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
256986Descrição do registo do Microsoft Windows
importante Este artigo contém informações que mostra a ajuda de definições de segurança mais baixas ou como desactivar as funcionalidades de segurança num computador. Pode efectuar estas alterações para contornar um problema específico. Antes de efectuar estas alterações, recomendamos que avalie os riscos associados à implementação desta solução alternativa no seu ambiente específico. Se implementar esta solução alternativa, tome medidas adicionais adequadas para proteger o seu sistema.
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

Quando fizer uma chamada de método COM que tenha um BSTR como um parâmetro, poderá receber uma mensagem de erro semelhante à seguinte:
0x800706F7 (o stub recebeu dados incorrectos)
Por exemplo, poderá detectar este problema quando chamar o método de COM IClassFactory::CreateInstanceLic .

Causa

Este problema ocorre se organizar uma BSTR de um computador baseado no Microsoft Windows 2000 para um computador baseado no Microsoft Windows Server 2003 ou para um computador baseado no Microsoft Windows XP. Não existe uma validação adicional do BSTR dados em computadores baseados no Windows Server 2003 e em computadores baseados no Windows XP. Esta validação adicional poderá tornar BSTR dados parece ser inválido.

Resolução

Windows Server 2003

Informações sobre Service Packs

Para resolver este problema, obtenha o service pack mais recente do Windows Server 2003. Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
889100Como obter o service pack mais recente do Windows Server 2003

Informações sobre a correcção

Pré-requisitos
Tem de ter o Microsoft Windows Server 2003 Service Pack 1 (SP1) ou Microsoft Windows XP Service Pack 2 (SP2) instalado para aplicar esta correcção.
Requisito de reinício
Tem de reiniciar o computador depois de aplicar esta correcção
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 na ferramenta Data e hora no painel de controlo.

Windows Server 2003, versões baseadas em Itanium
   Date         Time   Version        Size       File name     Platform
   --------------------------------------------------------------------
   29-Jun-2005  05:57  5.2.3790.2476  3,931,136  Oleaut32.dll  IA-64

Windows Server 2003, versões baseadas em 64 x
   Date         Time   Version        Size       File name
   ----------------------------------------------------------
   29-Jun-2005  05:57  5.2.3790.2476  1,116,160  Oleaut32.dll

Windows Server 2003, versões em x 86
   Date         Time   Version        Size     File name
   --------------------------------------------------------
   29-Jun-2005  05:16  5.2.3790.2476  556,032  Oleaut32.dll

Windows XP

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.

Se a correcção está disponível para transferência, existe uma secção "denominada transferência de correcção disponível" na parte superior deste artigo da base de dados de conhecimento. Se esta secção não for apresentado, contacte o serviço de cliente do Microsoft e suporte para obter a correcção.

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:
http://support.microsoft.com/contactus/?ws=support
Nota O formulário "Transferência de correcção disponível" apresenta os idiomas para a qual a correcção está disponível. Se não vir o idioma, é porque uma correcção não está disponível para esse idioma.
Pré-requisitos
Tem de ter o Microsoft Windows Server 2003 Service Pack 1 (SP1) ou Microsoft Windows XP Service Pack 2 (SP2) instalado para aplicar esta correcção.
Requisito de reinício
Tem de reiniciar o computador depois de aplicar esta correcção
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 na ferramenta Data e hora no painel de controlo.

Windows XP, versões baseadas em 64 x
   Date         Time   Version        Size       File name
   ----------------------------------------------------------
   29-Jun-2005  05:57  5.2.3790.2476  1,116,160  Oleaut32.dll
Windows XP, x 86 versões
   Date         Time   Version        Size     File name
   --------------------------------------------------------
   08-Mar-2005  08:24  5.1.2600.2626  549,376  Oleaut32.dll

Informações de registo

aviso Podem ocorrer problemas graves se modificar o registo incorrectamente utilizando o Editor de registo ou utilizando outro método. Estes problemas poderão forçar a reinstalação do sistema operativo. Microsoft não garante que estes problemas podem ser resolvidos. Modificar o registo por sua conta e risco.

Esta correcção fornece compatibilidade com computadores baseados no Windows 2000 quando validar dados BSTR. Tem de criar uma entrada de registo para activar esta correcção. Para criar esta entrada de registo num computador com o Windows Server 2003 ou num computador baseado no Windows XP, siga estes passos:
  1. Clique em Iniciar , clique em Executar , escreva Regedit na caixa Abrir e, em seguida, clique em OK .
  2. Localize a seguinte chave de registo:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
  3. Clique com o botão direito do rato a chave de registo localizada no passo 2, clique em Novo e, em seguida, clique em chave .
  4. Escreva OleAut e, em seguida, prima ENTER.
  5. Clique com o botão direito do rato OleAut , clique em Novo e em seguida, clique em Valor DWORD (DWORD Value) .
  6. Escreva DisableBSTRValidation e, em seguida, prima ENTER.
  7. Clique com o botão direito do rato DisableBSTRValidation e, em seguida, clique em Modificar .
  8. Na caixa dados do valor , escreva 00000001 e, em seguida, clique em OK .
  9. No menu ficheiro , clique em Sair para sair do Editor de registo.

Como contornar

aviso Esta medida pode tornar o computador ou a rede mais vulnerável a ataques de utilizadores mal intencionados ou software malicioso como vírus. A Microsoft não recomenda esta medida, mas fornece estas informações para que o utilizador pode implementá-la à sua própria responsabilidade. Usar esta solução por sua conta e risco.
Para contornar este problema, siga estes passos:
  1. Clique em Iniciar , clique em Executar , escreva Regedit na caixa Abrir e, em seguida, clique em OK .
  2. Localize a seguinte chave de registo:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
  3. Clique com o botão direito do rato a chave de registo localizada no passo 2, clique em Novo e, em seguida, clique em chave .
  4. Escreva OleAut e, em seguida, prima ENTER.
  5. Clique com o botão direito do rato OleAut , clique em Novo e em seguida, clique em Valor DWORD (DWORD Value) .
  6. Escreva DisableShield e, em seguida, prima ENTER.
  7. Clique com o botão direito do rato DisableShield e, em seguida, clique em Modificar .
  8. Na caixa dados do valor , escreva 00000001 e, em seguida, clique em OK .
  9. No menu ficheiro , clique em Sair para sair do Editor de registo.
Nota Esta solução alternativa desactiva algumas verificações de segurança que foram implementadas nos sistemas operativos Windows Server 2003 e Windows XP. Por conseguinte, recomendamos que utilize esta solução alternativa para testar se a correcção descrita neste artigo vai resolver o problema que está a ocorrer. Não recomendamos que utilize esta solução alternativa como uma solução permanente para este problema.

Ponto Da Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a". Este problema foi corrigido pela primeira vez no Windows Server 2003 Service Pack 2.

Mais Informação

Para obter mais informações, 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

Propriedades

Artigo: 895321 - Última revisão: 5 de dezembro de 2007 - Revisão: 3.5
A informação contida neste artigo aplica-se a:
  • Microsoft COM+ 1.5 nas seguintes plataformas
    • Microsoft Windows Server 2003 Standard Edition
    • Microsoft Windows Server 2003 Enterprise Edition
    • Microsoft Windows Server 2003 Datacenter Edition
    • Microsoft Windows Server 2003 Web Edition
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows Server 2003, Enterprise x64 Edition
    • Microsoft Windows Server 2003, Datacenter x64 Edition
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
    • Microsoft Windows XP Home Edition
    • Microsoft Windows XP Professional Edition
    • Microsoft Windows XP Professional x64 Edition
Palavras-chave: 
kbmt kbautohotfix kbwinserv2003sp2fix kbfix kbbug kbpubtypekc kbhotfixserver kbqfe KB895321 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 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: 895321

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