Condividi tramite


Viene visualizzato 0x80070005 errore quando si tenta di registrare una DLL usando Regsvr32.exe

Questo articolo fornisce una soluzione a un errore di 0x80070005 che si verifica quando si registra una DLL usando Regsvr32.exe.

Numero KB originale: 827659

Sintomi

Quando si tenta di registrare una libreria a collegamento dinamico (o DLL o .dll file) usando lo strumento da riga di comando Regsrv32.exe, la DLL non è registrata ed è possibile che venga visualizzato il messaggio di errore seguente:

DllRegisterServer in file_name.dll non riuscito.

Codice restituito: 0x80070005

Note

Questo comportamento non si verifica in Windows NT 4.0 o Windows 2000.

Causa

Questo comportamento può verificarsi se si tenta di registrare una DLL usando Regsrv32 mentre si è connessi usando un account che non dispone di credenziali amministrative, ad esempio un account membro del gruppo di utenti standard. Un account che non dispone di credenziali amministrative non può scrivere nel Registro di sistema o modificare i file nella cartella System32.

Il comportamento si verifica perché Windows XP e Windows Server 2003 usano uno schema di sicurezza più restrittivo rispetto alle versioni precedenti di Windows. Questo schema impedisce agli utenti standard di registrare DLL.

Note

A causa di questo comportamento, gli utenti standard potrebbero non essere in grado di eseguire programmi che registrano automaticamente le DLL usando l'ID dell'utente standard.

Risoluzione

Per risolvere questo comportamento, accedere usando un account amministratore e quindi registrare la DLL.

Ulteriori informazioni

È possibile registrare una DLL usando un account che non dispone di credenziali amministrative, purché la DLL non scriva nel Registro di sistema o modifichi i file nella cartella System32.