Was ist bei einem Windows Betriebssystem der Unterschied zwischen einer *.DLL und einer *.LIB Datei?
-
Ich dachte bisher, daß *.DLL Dateien selbst Bibliotheken sind.
-
DLL sind dynamische Libraries - die werden als eigenständige Dateien ausgeliefert und zur Laufzeit vom Programm gesucht und eingebunden. Das heißt auch, daß du sie nachträglich austauschen kannst, z.B. für Fehler-Korrekturen.
LIB sind statische Libraries - die existieren eigenständig nur beim Entwickler und werden vom Linker direkt in die fertige EXE integriert.
-
Besten Dank für die Antwort.
-
Wobei im Zusammenhang mit dlls auch meistens noch sog. Import Libs verwendet werden. Das sind .lib Dateien die einfach nur den Linker veranlassen die entsprechenden Verweise auf eine dll in der exe anzubringen. Darum musst du in der Regel eine .lib linken wenn du eine dll verwenden willst (load time vs. run time dynamic linking).