Artigo: 274038 - Última revisão: terça-feira, 26 de Dezembro de 2006 - Revisão: 1.4

PROBLEMA: Erro de ASP 8002801d "biblioteca não registada"

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

Sintomas

Quando navega numa página ASP (Active Server Pages), poderá receber a seguinte mensagem de erro:
Server object error ' ASP 0177: 8002801d '
Ocorreu uma falha de Server.CreateObject
/vdir/filename.asp, linha xx
Biblioteca não registada.

Causa

A cadeia de detalhe "Biblioteca não registada" indica que existe um problema com as informações de registo para este objecto. A entrada de registo poderão estar em falta ou contém informações incorrectas ou o utilizador poderá não ter permissão para ler a entrada de registo. Este artigo descreve como resolver o problema quando as informações no registo estão correctas, mas o utilizador não tem permissão para ler.

Este problema também pode ocorrer quando instalar o Crystal Reports 8. Para obter informações adicionais, clique nos números de artigo existentes abaixo para visualizar os artigos na Microsoft Knowledge Base:
266621  (http://support.microsoft.com/kb/266621/EN-US/ ) PROBLEMA: Mensagem de erro: "Biblioteca não registada" problemas com o Crystal Reports 8
272693  (http://support.microsoft.com/kb/272693/EN-US/ ) 0x8004005 ASP mensagem de erro ocorre quando ligado a uma base de dados depois de Crystal Reports instalação 8

Resolução

Para resolver este problema, atribua o grupo Todos permissão de leitura para as entradas de registo de ID de classe e TypeLib para o componente que está a falhar.

Nota : as entradas de registo ID de classe e TypeLib são ambos longa, hexadecimal números conhecido como (global identificadores exclusivos) GUID ou UUID (universally identificadores exclusivos).

Se o problema persistir, pode também utilizar o utilitário RegMon para determinar qual tenta ler o registo não conseguem. Poderá ter de atribuir todos grupo permissões de leitura para outras chaves de registo.

ID de classe

importante Esta secção, método ou tarefa contém passos que indicam como modificar o registo. No entanto, poderão ocorrer problemas graves se modificar o registo de forma incorrecta. Por conseguinte, certifique-se de que segue estes passos cuidadosamente. Criar uma para protecção adicional, cópia de segurança do registo antes de o modificar. Em seguida, pode restaurar o registo se ocorrer um problema. Para obter mais informações sobre como efectuar uma cópia de segurança e restaurar o registo, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
322756  (http://support.microsoft.com/kb/322756/ ) Como efectuar uma cópia de segurança e restaurar o registo no Windows

  1. Localize a linha de código que está a falhar, por exemplo:
    Server.CreateObject("MSWC.BrowserType")
    						
    a cadeia de texto, "MSWC.BrowserType" é o ID de programa (ID de programa).
  2. No menu Iniciar , clique em Executar . Na linha de comandos, escreva o seguinte comando para iniciar o editor de registo:
    RegEdt32.exe
  3. Na janela HKEY_CLASSES_ROOT, clique para expandir a chave ProgID e, em seguida, clique em CLSID . O valor UUID desta chave de registo. Por exemplo, o ID de classe para "MSWC.BrowserType" é {0ACE4881-8305-11CF-9427-444553540000}.
  4. Na janela HKEY_CLASSES_ROOT, clique para expandir a chave CLSID e, em seguida, seleccione a entrada de ID de classe (UUID, Universally Unique Identifier). No menu segurança , clique em permissões . Certifique-se que todos entrada tem permissão de leitura; se não, a adicionar esta entrada de permissão.

TypeLib

Localizar TypeLib

Expanda a entrada de ID de classe no passo 3 anterior e localize a entrada TypeLib abaixo dela. Registar o valor UUID e, em seguida, avance para a secção "Alterar permissões para TypeLib".

Se não existir nenhuma entrada TypeLib , execute os seguintes passos:
  1. Seleccione o movimento InprocServer32 ou LocalServer32 . Registe o caminho e nome do componente que existe no disco rígido.
  2. No menu Iniciar , aponte para programas , aponte para o Visual Studio , aponte para o Visual Studio Tools e, em seguida, clique em OleView .

    Nota : se OleView não estiver listado, execute os seguintes passos:
    • No painel de controlo, clique em Adicionar/remover programas e, em seguida, clique em Adicionar novos programas . Clique em Visual Studio e, em seguida, clique em Adicionar . Este procedimento inicia o programa de configuração Visual Studio.
    • Para instalar todas as ferramentas, seleccione a caixa de verificação Ferramentas . Ou, para instalar o Viewer de objecto OLE/COM, seleccione a caixa de verificação Ferramentas e clique em Alterar opção e, em seguida, seleccione a caixa de verificação Visualizador de objectos OLE/COM .
    • Conclua o programa de configuração Visual Studio e iniciar OleView.
  3. No OleView, no menu ficheiro , clique em Ver TypeLib .
  4. Abra o componente foi indicado na entrada InprocServer32 ou LocalServer32 . Texto semelhante o seguinte texto (o componente Browscap.dll foi utilizado neste exemplo) deverá ser apresentado perto da parte superior:
    // typelib filename: browscap.dll
    
    [
      uuid(E0049865-0766-11D1-8AAB-00C0F00910F9),
      version(1.0),
      helpstring("MSWC Browser Capabilities Object Library")
    ]
    							
    Registe o TypeLib UUID consta (11 de 0766 E0049865 D 1-8AAB-00C0F00910F9) neste exemplo.

Alterar permissões para TypeLib

  1. Na janela HKEY_CLASSES_ROOT, clique para expandir a chave TypeLib e seleccione a entrada TypeLib (UUID, Universally Unique Identifier).
  2. No menu segurança , clique em permissões . Certifique-se que todos entrada tem permissão de leitura; se não, a adicionar esta entrada de permissão.

Utilizar o utilitário RegMon

Se o problema persistir depois de alterar as permissões para ID de classe e TypeLib , também pode utilizar o utilitário RegMon para monitorizar a actividade de registo enquanto executa a linha de falha de código. O registo RegMon mostra se quaisquer tentativas para ler o registo falharem. Pode transferir RegMon a partir do seguinte Web site da Sysinternals:
http://technet.microsoft.com/en-us/sysinternals/default.aspx (http://technet.microsoft.com/en-us/sysinternals/default.aspx)
A menos que defina um filtro, RegMon regista todas as actividades de registo de todos os programas. Por exemplo, para capturar toda a actividade do Microsoft Internet Information Server (IIS), defina o filtro "inetinfo * dllhost *; mtx *". Para restringir ainda mais o filtro, seleccione as caixas de verificação Erros de registo , As leituras de registo e registo de outro . No registo, procure "ACCDENIED" na coluna de resultados e, reveja quaisquer chaves com este resultado. Poderá ter de atribuir todos grupo permissões de leitura para estas chaves.

Microsoft fornece informações de contactos outros fabricantes para ajudar a encontrar suporte técnico. Poderá ser alterado estas informações de contacto sem aviso prévio. Microsoft não garante a precisão destas informações de contacto outros fabricantes.

Referências

Para obter informações adicionais, clique nos números de artigo existentes abaixo para visualizar os artigos na Microsoft Knowledge Base:
259176  (http://support.microsoft.com/kb/259176/EN-US/ ) PROBLEMA: Erro 8002801d ocorre quando cria um CDONTS.NewMail
266621  (http://support.microsoft.com/kb/266621/EN-US/ ) PROBLEMA: "biblioteca não registada" problemas com o Crystal Reports 8.0
272693  (http://support.microsoft.com/kb/272693/EN-US/ ) Ocorrência de erros ASP 0x8004005 com Crystal Reports 8
268553  (http://support.microsoft.com/kb/268553/EN-US/ ) PROBLEMA: Visual Studio instalação problemas se Crystal Reports 8 está instalado

A informação contida neste artigo aplica-se a:
  • Microsoft Visual InterDev 1.0 Standard Edition
  • Microsoft Visual InterDev 6.0 Standard Edition
Palavras-chave: 
kbmt kbctrl kbprb kbsecurity kbsysadmin KB274038 KbMtpt
Tradução automáticaTraduçã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: 274038  (http://support.microsoft.com/kb/274038/en-us/ )