Regsvr32: O que é & Como registrar DLLs

Índice:

Regsvr32: O que é & Como registrar DLLs
Regsvr32: O que é & Como registrar DLLs
Anonim

O que saber

  • Para registrar um arquivo DLL meuarquivo.dll, digite regsvr32 meuarquivo.dll e para cancelar o registro digite r egsvr32 /u meuarquivo.dllna linha de comando.
  • Se você receber um erro ao tentar registrar um arquivo DLL, você pode não ter as permissões corretas ou o arquivo pode estar bloqueado.
  • Outros erros podem ser devidos a uma dependência ausente; em caso afirmativo, use o Dependency Walker para ver todas as dependências que o arquivo DLL requer.

Este artigo explica como usar a ferramenta de linha de comando regsvr32 no Windows e como corrigir alguns erros regsvr32. Regsvr32 é usado para registrar e cancelar o registro de controles OLE (Object Linking and Embedding), como arquivos DLL e controle ActiveX.arquivos OCX. Você pode precisar registrar um arquivo DLL se vir um erro de DLL em seu computador.

Como registrar e cancelar o registro de um arquivo DLL

Se as referências no Registro do Windows que se referem ao arquivo DLL forem removidas ou corrompidas de alguma forma, os programas que precisam usar esse arquivo DLL podem parar de funcionar. É quando esta associação com o registro é quebrada que um arquivo DLL deve ser registrado.

Registrar um arquivo DLL normalmente é feito reinstalando o programa que o registrou em primeiro lugar. Às vezes, no entanto, você pode ter que registrar o arquivo DLL manualmente através do Prompt de Comando.

Veja nosso tutorial sobre como abrir o Prompt de Comando se você não tiver certeza de como encontrá-lo.

Esta é a maneira correta de estruturar um comando regsvr32:


regsvr32 [/u] [/n] [/i[:cmdline]

Por exemplo, você digitaria este primeiro comando para registrar um arquivo DLL chamado myfile.dll, ou o segundo para cancelar o registro:


regsvr32 meuarquivo.dll

regsvr32 /u meuarquivo.dll

Image
Image

Nem todas as DLLs podem ser registradas apenas digitando o comando acima em um prompt de comando. Talvez seja necessário fechar primeiro o serviço ou programa que está usando o arquivo.

Como corrigir erros comuns do Regsvr32

Aqui está um erro que você pode ver ao tentar registrar um arquivo DLL:


O módulo foi carregado, mas a chamada para DllRegisterServer falhou com o código de erro 0x80070005.

Isso é tipicamente um problema de permissão. Se a execução de um prompt de comando elevado ainda não permitir que você registre o arquivo DLL, o próprio arquivo poderá estar bloqueado. Verifique a seção Segurança da guia Geral na janela Propriedades do arquivo.

Outro possível problema pode ser que você não tenha as permissões corretas para usar o arquivo.

Uma mensagem de erro semelhante é redigida como a abaixo. Esse erro normalmente significa que a DLL não está sendo usada como uma DLL COM para nenhum aplicativo no computador, o que significa que não há necessidade de registrá-la.


O módulo foi carregado mas o ponto de entrada DllRegisterServer não foi encontrado.

Aqui está outra mensagem de erro regsvr32:


O módulo falhou ao carregar. Certifique-se de que o binário esteja armazenado no caminho especificado ou depure-o para verificar se há problemas com os arquivos. DLL binários ou dependentes. O módulo especificado não foi encontrado.

Image
Image

Esse erro em particular pode ser devido a uma dependência ausente, nesse caso você pode usar o Dependency Walker para ver uma lista de todas as dependências que o arquivo DLL requer, pois pode estar f altando uma que você precisa ter em ordem para que a DLL se registre corretamente.

Além disso, certifique-se de que o caminho para o arquivo DLL esteja escrito corretamente. A sintaxe do comando é muito importante; um erro pode ser gerado se não for digitado corretamente.

Alguns arquivos DLL podem precisar ter sua localização entre aspas como esta:


"C:\Users\Admin User\Programs\myfile.dll"

Onde está armazenado o Regsvr32.exe?

Versões de 32 bits do Windows (XP e mais recentes) adicionam a ferramenta Microsoft Register Server a esta pasta quando o Windows é instalado pela primeira vez: %systemroot%\System32\.

Versões de 64 bits do Windows armazenam o arquivo regsvr32.exe não apenas lá, mas também aqui: %systemroot%\SysWoW64\.

Recomendado: