Link rapidi:

Ocx e dll: registrazione componenti OCX e DLL mancanti

Windows usa componenti (i files con estensione *.OCX) e librerie (i files con estensioni *.DLL) per l'esecuzione della maggioranza dei software in circolazione.

Questi componenti e librerie sono di default installati con il sistema operativo e in Windows XP si trovano nella C:\windows\system32.

Quando un'applicazione necessita di un componente o di una libreria non targata Microsoft (e quindi non installata insieme al sistema operativo) per esegue funzioni particolari, il software in questione deve installare e registrare nel registro di sistema, tale componente.

Puo' capitare, pero', che queste installazioni non procedano a buon fine o che questi componenti vadano persi o concellati. A questo punto l'applicazione installata non funziona piu' correttamente e lancia uno dei classici messaggi d'errore tipo:

Componente nomefile.ocx o nomefile.dll mancante!
Self Registration error. The following files did not self-register or unregister
Errore durante l'accesso al registro di sistema OLE

Per risolvere questo errore occorre riuscire a registrare i componenti OCX e/o DLL mancanti.

Per registrare i componenti OCX e DLL per prima cosa e' necessario avere i diritti di amministratore del sistema.
Per accertarlo, cliccare su Start > Impostazioni > Pannello di controllo > Account utente e controllare che la descrizione dell'account che si sta' utilizzando riporti Amministratore del computer.
Se diversa, cliccare sull'account, quindi su Cambia il tipo di account ed impostare Amministratore del computer. Cliccare quindi su Cambia il tipo di account per confermare la modifica, ed uscire.

Metodo 1

Questo e' il metodo piu' semplice e indolore, e consiste nel registrare manualmente i componenti mancanti.

Registrazione dei componenti OCX
Per registrare i componenti OCX occorre:

1) Copiare il o i Files segnalati dal messagio di errore nella directory ...\windows\system32

2) Andare su Start > Esegui... e digitare

regsvr32 c:\windows\system32\NomeFileMancante.ocx


Registrazione delle librerie DLL
Per registrare le librerie DLL occorre:

1) Copiare il o i Files segnalati dal messagio di errore nella directory ...\windows\system32

2) Andare su Start > Esegui... e digitare

regsvr32 c:\windows\system32\nomefilemancante.dll


ecco le opzioni di Regsvr32:

Finestra di dialogo RegSvr32

Questa procedura puo' essere eseguita anche tramite il software ActiveX Manager disponibile per il download nella sezione del nostro sito Computer alla pagina Windows manager tools
(www.parlandosparlando.com/view.php/id_229/lingua_0/whoisit_1)


Metodo 2

Nonostante tutti gli sforzi fatti in precedenza, puo' capitare (e neanche tanto di rado) che non si riesca ancora a installare queste OCX o DLL. La causa e' allora da ricercare in qualche chiave del registro di Windows che ne impedisce la corretta registrazione.

In questo caso non bastano solo le proprie forze, ma occorre anche l'ausilio di un software specializzato: il programma e' Registry Monitor (conosciuto come Regmon), che e' disponibile per il download nella nostra sezione Computer alla pagina Windows manager tools
(www.parlandosparlando.com/view.php/id_229/lingua_0/whoisit_1)

Avviare Regmon (che non richiede installazione); premere i tasti Ctrl A per disabilitare la funzione di scorrimento automatico.

Provare a registrare nuovamente la chiave OCX o DLL mancante come visto con il precedente metodo, controllando questa volta in Regmon tutte le richieste Openkey generate a cui e' stato negato l'accesso.

Le richieste Openkey sono elencate nella colonna Request, le negazioni di accesso nella colonna Result con l'etichetta ACCDENIED (ossia accesso negato).

Ora, cliccare su Start > Esegui..., digitare regedit e cliccare su Ok.

Si aprira' cosi' il registro di configurazione di Windows; andare alla prima delle chiavi elencate dal precedente programma Regmon che erano state etichettate con ACCDENIED e selezionarla cliccarci sopra con il tasto destro del mouse.

Nel menu a tendina che si sara' aperto, cliccare su Autorizzazioni.

Controllare che in Autorizzazioni per Administrators sia abilitata la casella per il controllo completo.

Se si hanno problemi di modifica, sempre nella stessa finestra, cliccare su Avanzate, in Autorizzazioni evidenziare il nome del proprio account, abilitare la casella Sostituisci le autorizzazioni in tutti gli oggetti con le autorizzazioni appropriate qui specificate, quindi premere Applica ed Ok.

Eseguire queste operazioni su tutte le chiavi del registro che il programma Regmon ha etichettato con ACCDENIED, e poi provare ad installare nuovamente il programma che aveva dato l'errore degli OCX e/o delle DLL.




Dizionario

I controlli OCX (brevemente OCX) vengono utilizzati in Visual Basic ed altri linguaggi di programmazione (Visual C++, FoxPro, ecc).
Il loro nome deriva dalla loro estensione (.ocx), acronimo di OLE Custom Controls (OLE e' l'acronimo di Object Linking and Embedding (in italiano collegamento e incorporazione di oggetti).
Gli OCX, come gli ActiveX, possono essere attivati in Visual Basic dal comando Componenti (Components) nel menu' Progetto (Project). Selezionando le varie caselle si aggiungono pulsanti alla casella degli strumenti, relativamente ai controlli selezionati. Una volta utilizzato un controllo OCX esso deve essere poi distribuito assieme al progetto finale (.exe o .dll) affinche' il progetto stesso possa essere eseguito correttamente.

Librerie DLL: DLL e' l'aconimo di dynamic-link library (in italiano libreria a collegamento dinamico) e' una libreria software che non viene collegata staticamente ad un eseguibile in fase di compilazione, ma che viene caricata dinamicamente in fase di esecuzione.
DLL e' l'estensione del file che hanno nel sistema operativo Microsoft Windows.
Nei sistemi Linux sono invece note come so, abbreviazione di shared object.

Ultimo aggiornamento: 03/12/2006
Copyright © 2000-2017 Parlandosparlando