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 tramite Regsvr32.exe.

Si applica a: Windows 10: tutte le edizioni, Windows Server 2012 R2
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 e potrebbe essere visualizzato il messaggio di errore seguente:

DllRegisterServer in file_name.dll non riuscito.

Codice restituito: 0x80070005

Nota

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 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 le DLL.

Nota

A causa di questo comportamento, gli utenti standard potrebbero non essere in grado di eseguire programmi che registrano automaticamente 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 finché la DLL non scrive nel Registro di sistema o non modifica i file nella cartella System32.