Compartilhar via


Você recebe 0x80070005 erro ao tentar registrar uma DLL usando Regsvr32.exe

Este artigo fornece uma solução para um erro de 0x80070005 que ocorre quando você registra uma DLL usando Regsvr32.exe.

Número original do KB: 827659

Sintomas

Quando você tenta registrar uma biblioteca de vínculo dinâmico (ou DLL ou arquivo .dll) usando a ferramenta de linha de comando Regsrv32.exe, a DLL não é registrada e você pode receber a seguinte mensagem de erro:

DllRegisterServer em file_name.dll falhou.

O código de retorno era: 0x80070005

Observação

Esse comportamento não ocorre no Windows NT 4.0 ou no Windows 2000.

Motivo

Esse comportamento pode ocorrer se você tentar registrar uma DLL usando Regsrv32 enquanto estiver conectado usando uma conta que não tenha credenciais administrativas, como uma conta que seja membro do grupo de usuários padrão. Uma conta que não tem credenciais administrativas não pode gravar no registro ou alterar arquivos na pasta System32.

O comportamento ocorre porque o Windows XP e o Windows Server 2003 usam um esquema de segurança mais restritivo do que as versões anteriores do Windows. Esse esquema impede que usuários padrão registrem DLLs.

Observação

Devido a esse comportamento, os usuários padrão podem não ser capazes de executar programas que registram DLLs usando a ID do usuário padrão.

Resolução

Para resolver esse comportamento, faça logon usando uma conta de administrador e registre a DLL.

Mais informações

Você pode registrar uma DLL usando uma conta que não tenha credenciais administrativas, desde que a DLL não grave no Registro ou altere arquivos na pasta System32.