Bir kitaplık dosyası bağlayıcı tarafından okunur ve yürütme sırasında bir dll dosyası kullanılır. Bir lib dosya yürütme sırasında esas olarak işe yaramaz ve bir bağlayıcı aciz okuma (muhtemelen alakasız bir şekilde burada hariç) Dll.
Statik ve dinamik bağlantı için lib dosyalarının kullanımı arasındaki farklar kafa karıştırıcı olabilir, ancak biraz geçmişi anlarsanız, o zaman çok açık hale gelir.
Başlangıçta yalnızca statik kitaplıklar vardı. Statik bir kitaplık için, .lib dosyası obj dosyalarını içerir. Her obj dosyası, bir ve yalnızca bir derleyici kaynak kodu girdi dosyasının çıktısıdır. Bir lib dosyası, obj dosyalarını bir dizine koymak gibi, sadece ilgili obj dosyalarının bir koleksiyonudur. Bu aslında bir lib dosyasıdır, obj dosyalarından oluşan bir kitaplıktır. Statik bir bağlantı için, bir yürütülebilir dosyanın kullandığı tüm obj dosyaları tek bir dosyada birleştirilir. Bunu, yürütülebilir dosyanın kullandığı diğer koddan ayrı bir dosyada bulunduğu dinamik bir bağlantıyla karşılaştırın.
Dinamik bağlamayı uygulamak için, Microsoft, lib dosyalarının kullanımını, obj dosyasındaki konumlar yerine bir dll dosyasına başvuracak şekilde değiştirdi. Bunun dışında, bir statik bağlantı için bir kitaplıkta bulunan tüm bilgiler, bir dinamik bağlantı için olanla aynıdır. Dinamik bağlantı için bir kitaplık dosyasının dll dosyasını belirtmesi dışında hepsi içlerindeki bilgilerle aynıdır.