Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Puoi provare ad usare CreateObject() intercettando l'errore
Dim obj As Object
On Error Resume Next
set obj = CreateObject(<nome.classeocx>
If obj is Nothing Then
Debug.Print "Ocx non registrato"
End If
Per registrarlo, invece, potresti avere parecchi problemi, dipende dallo scenario (che non hai indicato) perchè il tentativo fallirà miseramente se eseguito su Windows Vista o Seven perchè occorrono permessi speciali (non basta essere amministratore) per farlo da programma.
Per cui se, come credo, distribuisci il tuo programma a terzi sappi a cosa vai incontro.
Oltretutto non è nemmeno corretto registrarlo (e nemmeno de-registralo) via codice perchè la registrazione di un componente ActiveX richiede anche che venga aggiornato un contatore che indica quante applicazioni utilizzano quel componente, come puoi verificare nel Registro di Windows in questa chiave: