Bilgisayarınızdaki dosyaları incelediyseniz, çok sayıda DLL dosyası olduğunu görmüş veya bir programı açmaya çalışırken bir DLL hatasıyla karşılaşmış olabilirsiniz. Bu yazıda DLL dosyalarının ne olduğu, nasıl ve neden kullanıldığı ve DLL hatasıyla karşılaştığınızda ne yapmanız gerektiği açıklamaya çalışacağız.
DLL dosyası nedir?
Dinamik Bağlantı Kitaplığı’nın (Dynamic Link Library) kısaltması olan DLL dosyası, diğer programların belirli şeyleri yapmak için arayabileceği talimatları içeren bir dosya türüdür. Bu şekilde birden fazla program, programlanan yetenekleri tek bir dosyada paylaşabilir ve hatta aynı anda kullanabilir.
Örneğin, birkaç farklı program, sabit sürücüdeki boş alanı bulmak, belirli bir dizindeki bir dosyayı bulmak ve varsayılan yazıcıda bir test sayfası yazdırmak için örnek.dll gibi bir DLL dosyasını çağırabilir.
EXE dosya uzantısına sahip olanlar gibi yürütülebilir programların aksine, DLL dosyaları doğrudan çalıştırılamaz, bunun yerine halihazırda çalışmakta olan diğer kodlar tarafından çağrılması gerekir. Ancak DLL’ler EXE’lerle aynı formattadır ve bazıları .EXE dosya uzantısını bile kullanabilir. Çoğu Dinamik Bağlantı Kitaplığı .DLL dosya uzantısıyla bitse de bazıları .OCX, .CPL veya .DRV uzantılarını kullanabilir.
DLL dosyaları, bol miktarda olmaları ve sıklıkla kullanılmaları nedeniyle, Windows’u başlatırken, kullanırken ve kapatırken görülen hataların büyük bir yüzdesinde karşınıza çıkma eğilimindedir. Eksik veya bulunamayan DLL dosyasını indirmek kolay olsa da, bu yöntemin nadiren en iyi yol olduğunu söyleyebiliriz.
DLL hatası nasıl çözülür?
Bir DLL hatası ile karşılaşırsanız, yapacağınız en iyi şey, o DLL sorununa özel sorun giderme bilgilerini bulmaktır. Bu sayede sorunu doğru şekilde ve kalıcı olarak çözeceğinizden emin olabilirsiniz. Çoğu program, yükleme sürecine benzeyen bir onarma seçeneğine sahiptir ve çoğu durumda program bu işlem ile eksik olan gerekli dosyaları bularak tekrar yükler.
Dinamik Bağlantı Kitaplığı’ndaki “dinamik” kelimesi, verilerin her zaman bellekte mevcut olması yerine, verilerin yalnızca program onu aktif olarak çağırdığında bir programda kullanıma sunulması nedeniyle kullanılır.
DLL dosyaları nasıl açılır?
Varsayılan olarak Windows’ta çok sayıda DLL dosyası mevcuttur ancak üçüncü taraf programlar da bunları yükleyebilir. Bir DLL dosyasını açmak nadir görülen bir durumdur, çünkü hiçbir zaman bir dosyayı düzenlemeye gerek yoktur, ayrıca bunu yapmak muhtemelen programlarda ve diğer DLL’lerde sorunlara neden olabilir. Yine de, ne yaptığınızı biliyorsanız, Resource Hacker gibi bir program ile bunu yapabilirsiniz.
DLL dosyaları, bir programın farklı bileşenlerini benzersiz modüllere ayırmasına olanak tanıdığından dolayı oldukça faydalıdır. Bu modüller, belirli işlevleri dahil etmek veya hariç tutmak için daha sonra eklenebilir veya kaldırılabilir. Bir yazılım bu şekilde DLL dosyalarıyla çalıştığında, program her şeyi aynı anda yüklemeye ihtiyaç duymadığından dolayı daha az bellek kullanabilir.
Ayrıca DLL’ler, programın tamamını yeniden oluşturmaya veya yeniden yüklemeye gerek kalmadan programın bazı bölümlerinin güncellenmesi için bir yol sağlar. Bir program DLL kullandığında, tüm uygulamalar tek DLL dosyasındaki güncellemeden yararlanabildiği için bu fayda daha da artar.
ActiveX Denetimleri, Denetim Masası dosyaları ve aygıt sürücüleri, Windows’un Dinamik Bağlantı Kitaplıkları olarak kullandığı dosyalardan bazılarıdır. Bu dosyalar sırasıyla OCX, CPL ve DRV dosya uzantısını kullanır.
Bir DLL farklı bir DLL’den gelen talimatları kullandığında, bunların ilki, artık ikinciye bağımlı olarak tanımlanır. Bu, yalnızca ilkinin arızalanma şansı yerine artık ikinciye de bağımlı olması ve sorun yaşanması durumunda ilkini de etkileyeceği için DLL işlevlerinin bozulmasını kolaylaştırır.
Bağımlı bir DLL daha yeni bir sürüme yükseltilirse, eski bir sürüm üzerine yazılırsa veya bilgisayardan kaldırılırsa, DLL dosyasına dayalı program artık olması gerektiği gibi çalışmayabilir.
Kaynak DLL’leri, DLL’lerle aynı dosya biçiminde olan ancak ICL, FON ve FOT dosya uzantılarını kullanan veri dosyalarıdır. ICL dosyaları simge kitaplıklarıdır, FONT ve FOT dosyaları ise yazı tipi dosyalarıdır.