Telefonino.net network
Win Base Win Adv Win XP Vista Windows 7 Registri Software Manuali Humor Hardware Recensioni Blog Download Foto
INDICE SEZIONE NEWS WEB NEWS SOFTWARE PUBBLICITA'
Cosa sono le DLL

CONDIVISIONE DELLE DLL

Come si è ripetuto più volte uno dei vantaggi delle Librerie è la condivisione delle loro funzioni con un conseguente risparmio di codice. Questo vantaggio comporta però un'importante problematica: quando una disinstallazione può rimuovere un libreria condivisa da più programmi?

La risposta si trova, come spesso accade, nel Registry di Windows nella chiave:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls

Tutte le librerie condivise che vengono installate sulla macchina vengono inserite in questa chiave e viene dato loro un valore che funge da contatore. Ogni volta che viene installato/rimossa un'applicazione che sfrutta quella determinata DLL il suo contatore viene incrementato/decrementato.

Quando un programma viene rimosso controlla il valore di questa chiave per saper se il file .Dll che aveva precedentemente installato è utilizzate da altri software.

Se il contatore è a 0 viene proposta l'eliminazione.


ALCUNE DLL

Ecco un lista di alcune delle Librerie più utilizzate e la loro descrizione:

Filename
Version
Description
Msvcrt.dll
6.00.8337
Run-Time di Visual C++
Oleaut32.dll
2.30.4265
Parte di OLE-AUT che complementa Microsoft Foundation Classes (MFC) and Visual Basic run-time.
Olepro32.dll
5.00.4265
Parte di OLE-AUT che complementa MFC e Visual Basic run-time.
Asycfilt.dll
2.30.4265
Parte di OLE-AUT che complementa MFC e Visual Basic run-time.
Stdole2.tlb
2.30.4265
Parte di OLE-AUT che complementa MFC e Visual Basic run-time.
Mfc42.dll
6.00.8267
Microsoft Foundation Class (MFC), Dipendente da Msvcrt.dll, ComCtl32.dll, e OLE-AUT files.
Mfc42u.dll
6.00.8267
MFC Unicode solo per Windows Nt
Regsvr32.exe   Eseguibile per registrare le Dll.
RegTlib.exe   Eseguibile per registrare I file .Tlb


CONCLUSIONI

Le Librerie Dinamiche sono una parte fondamentale del sistema Windows. Hanno grandi potenzialità ma dal punto di vista del risparmio di codice e degli aggiornamenti.
In via teorica, come si diceva all'inizio, è possibile rivoluzionare, aggiornare o "aggiustare" un intero programma sostituendo una semplice Dll.
Purtroppo la realtà è un po' diversa: la maggior parte delle Librerie sono situate nella cartella Windows\System e sono condivise da più programmi e questo provoca spesso problemi di compatibilità.

Facciamo un esempio:

il Computer ha già installato una libreria Correttore.Dll. Il programma di videoscrittura Write, all'installazione, sovrascrive il file con una sua versione più recente che comprende una particolare funzione aggiuntiva TrovaSinonimi.

A questo punto il primo dei due programmi installati non funzionerà correttamente perché l'installazione del secondo avrà sostituito la libreria Correttore.Dll.

Questo è uno dei principali problemi di compatibilità tra i software.

Altri problemi si verificano nel "pericoloso" Registro di Configurazione ma l'incognita più forte sta proprio nel contenuto di queste librerie.

Ne esistono a centinaia ed ognuna di esse contiene decine di funzioni. La documentazione che indichi le dipendenze tra i vari file e quali funzioni contengano scarseggia e questo obbligherà sempre più spesso a formattare o reistallare programmi al primo messaggio di errore o addirittura impedirà all'utente di far convivere sulla propria macchina applicazioni che entrano in conflitto.

|   Pagina1  |  Pagina 2 Pagina 3  |  Pagina 4  |

 In evidenza Registrare la TV da iPhone e iPad



Nel Web in WinTricks
Copyright © 1999-2012 Master New Media s.r.l. p.iva: 02947530784
COPYRIGHT . PRIVACY . REDAZIONE . STORIA . SUPPORTA
 

Warning: include(/mnt/host/www/wintricks/wintricks.it/www/bottom.php) [function.include]: failed to open stream: Permission denied in /mnt/host/www/wintricks/wintricks.it/www/manuali/dll4.html on line 267

Warning: include() [function.include]: Failed opening '/mnt/host/www/wintricks/wintricks.it/www/bottom.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /mnt/host/www/wintricks/wintricks.it/www/manuali/dll4.html on line 267