Verificare che una DLL (o altro file) sia già registrato con RegSvr32

giovedì 28 gennaio 2010 - 11.34

ysdemarc Profilo | Expert

Ho bisogno di verificare che alcune DLL in questo caso (ma non escludo successivamente ocx ecc..) siano già registrate col comando regsvr32 altrimenti le devo registrare.

ho scritto queste righe guardando nel registro la posizione di una dll VB6

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

controllo solo che tra tutte le CLSID esista il percorso file passato e che la versione del file del pc sia uguale con la Version del registro.

Tutto qua apposto..

poi ho cercato di verificare una dll di altri programmi.. e anche se sono registrate la funzione sopra non funziona.

Infatti ho notato che in quel percorso la dll non si trova ma si trova come chiave in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls e non capisco cosa sia il numero di valore associato e non saprei come ricavarne il numero di versione registrata. Da precisare che la mia dll VB6 in quest'ultimo elenco non compare neanche registrandola di nuovo.

un'altra DLL invece ha un comportamento molto più curioso non si trova sotto CLSID ma in
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components\6EC321234593537439154AEE419BF08A
con chiave 6EC321234593537439154AEE419BF08 e valore C?\WINDOWS\system32\nomedll.dll .. è molto curioso il C?\ al posto del C:\
mentre sempre nel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls risulta come chiave col percorso corretto e con valore che non so il significato.

Morale della favola..Dove e cosa devo cercare per sapere se una DLL di una determinata versione sia istallata o meno?

grazie...

ciao
Vincenzo
Programmatore sbilenco
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5