Gli utenti di Windows hanno sicuramente sentito parlare dei file DLL, di cui esistono diversi file nella directory di Windows. In questo articolo scoprirete che cos’è esattamente un file DLL, a cosa serve e quali problemi possono verificarsi in relazione ai file DLL.
DLL è l’acronimo di Dynamic Link Library, quindi un file DLL è una libreria di programmi dinamici.
Molte funzioni di Windows, ad esempio la routine di stampa, sono implementate come file DLL in Windows e possono essere ricaricate dinamicamente da Windows in base alle necessità, quindi non occupano direttamente la memoria principale. Inoltre, anche altri programmi possono accedere a questa libreria di programmi.
I file DLL vengono installati dai programmi di installazione, dai moduli di esecuzione o dagli aggiornamenti del sistema e le funzioni vengono registrate nel registro di sistema. Se si desidera installare una DLL da soli, il file deve essere copiato in una directory e registrato nel sistema tramite un comando della riga di comando.
Indice dei contenuti
1. I file DLL sono i cardini della struttura modulare di Windows
Un grande vantaggio di Microsoft Windows e degli altri sistemi operativi moderni è la loro struttura modulare. Molte funzioni di sistema sono affidate alle proprie librerie di programmi, ognuna delle quali è nota anche come Dynamic Link Library(DLL).
L’uso di file DLL presenta diversi vantaggi per un sistema operativo o un programma:
- Una libreria di programma non necessaria non occupa memoria di lavoro e deve essere ricaricata solo su richiesta.
- Le singole librerie di programmi possono essere “patchate” o modificate molto più facilmente, ad esempio per implementare nuove funzioni o correggere errori.
- Tutti i programmi accedono sempre alla stessa libreria di programmi. Ciò significa che non è necessario svilupparne una nuova per ogni software.
Le librerie di programmi possono essere costituite da file EXE o DLL eseguibili, che si comportano fondamentalmente come programmi eseguibili e contengono il proprio codice di programma.
Buono a sapersi: I file di controllo ActiveX (.ocx), i file di controllo del sistema (.cpl) o i file dei driver di periferica (.drv) sono anch’essi file DLL, ma con un’estensione diversa.
Tuttavia, i file DLL presentano anche uno svantaggio. Esistono diverse versioni di molti file DLL e non tutti i programmi sono in grado di gestire tutte le versioni di un file DLL perché possono conoscere comandi e routine diverse. Da Windows 95 a Windows XP, uno dei problemi più comuni era il caos di versioni dei diversi file DLL, che gli installatori dei diversi programmi sovrascrivevano l’uno con l’altro.
Lenuove versioni di Windows proteggono i file DLL nella cartella Windows e nelle sue sottocartelle da sovrascritture non autorizzate. Ciò significa che i programmi hanno copiato versioni speciali dei file DLL nella propria cartella dei programmi e la sovrascrittura non è più possibile per altri programmi. Tuttavia, questo aumenta lo spazio necessario per l’installazione dei file. I file DLL nelle cartelle dei programmi sono chiamati anche“DLL private“.
2. informazioni sulla lettura di un file DLL
In linea di massima, si consiglia di non rimuovere i file DLL dal sistema senza un motivo. Tuttavia, se siete interessati alla provenienza del file o al suo scopo, potete fare ulteriori ricerche qui.
La prima fonte di informazioni sono le proprietà del file. Nella scheda Firme digitali è possibile vedere chi è l’editore del file. Nella scheda Dettagli è possibile visualizzare ulteriori informazioni, quali una breve descrizione, la versione del file e così via.
Anche siti web come file.net forniscono ulteriori informazioni. L’esempio “What is msvcrt.dll” fornisce una breve descrizione dell’origine e dell’uso del file.
Tuttavia, con un decompilatore come il gratuito dotPeek, è possibile aprire i file DLL e dare un’occhiata più da vicino alle funzioni della libreria. È anche possibile modificare il codice sorgente tramite Visual Studio.
3. come “installare” i file DLL
Se Windows ha bisogno di una routine descritta in un file DLL, Windows accede a questa routine da solo. Pertanto, non è necessario né possibile aprire un file DLL per eseguire una funzione specifica.
Tuttavia, a causa di un programma di installazione o disinstallazione errato, può accadere che un file DLL sia ancora presente nel sistema, ma che Windows non ne sia a conoscenza. Windows può accedere solo ai file DLL registrati.
Per rendere noto a Windows un file DLL, è necessario registrarlo. A tale scopo, avviare il prompt dei comandi come amministratore e immettere il comando
Regsvr32 c:windowssystem32msvcrtl.dll
il cui percorso e nome servono solo come esempio.
Windows segnala quindi, tramite il prompt dei comandi, che la registrazione della DLL è avvenuta con successo. Se non funziona, il percorso del file DLL non è corretto.
Al contrario, è possibile anche cancellare la registrazione di una DLL.
Per farlo, utilizzare il comando
Regsvr32 /U c:windowssystem32msvcrtl.dll
è necessario.
3.1 Dove posso trovare un file DLL?
Se un file DLL manca nel vostro sistema, non caricatelo semplicemente da “qualche parte” su Internet. Non si conosce né l’origine né la funzione esatta del file DLL sconosciuto. Potrebbe anche trattarsi di un virus/Trojan. Una fonte comune di download è il sito DLL-Files.com. Tuttavia, l’origine dei loro download non è certificata. Pertanto, utilizzateli a vostro rischio e pericolo.
DirectX 9 in Windows 10: molti vecchi giochi risalenti all’epoca di Windows XP generano un messaggio di errore durante l’installazione o l’avvio in Windows 10 che segnala la mancanza del file della tecnologia DirectX nella versione 9, che questi giochi richiedono. Per risolvere questo errore, è comunque possibile installare DirectX9, che era in realtà per Windows XP, in Windows 10. Questo non causa alcun problema di compatibilità perché Windows 10 utilizza una nuova versione dell’interfaccia.
Spesso, tuttavia, una ricerca di un file DLL vi dirà da dove proviene. Ad esempio, se a CorelDraw manca un file XY, è molto probabile che il file sia stato o debba essere installato da CorelDraw. Pertanto, cercate il file DLL nei file di installazione del programma. Un packer come 7-Zip, che può anche aprire i file di installazione ed estrarre i file da essi, può essere di buon aiuto in questo caso.