2013-03-07 26 views
5

Jaka jest różnica między plikiem DLL a plikiem LIB? Co jest w pliku DLL i co znajduje się w pliku LIB? Czy pliki DLL i LIB są niezbędne do utworzenia pliku wykonywalnego?Pliki DLL i LIB

Odpowiedz

7

Plik DLL jest ostatecznym produktem, który instalujesz na komputerze klienta. Jest bardzo podobny do pliku EXE, tej samej struktury, ale może być ładowany na żądanie do innego programu.

Plik LIB służy do kompilacji programu, istnieje tylko na komputerze kompilowanym i nie jest wysyłany. Istnieją dwa rodzaje. Biblioteka łącza statycznego to torba z plikami .obj, zebrana w pojedynczy plik. Łącznik wybiera fragmenty kodu z pliku, gdy musi rozwiązać zewnętrzny identyfikator.

Ale bardziej odpowiednie dla bibliotek DLL, plik LIB może być również biblioteką importu. Jest to prosty, mały plik zawierający nazwę biblioteki DLL oraz listę wszystkich funkcji eksportowanych przez bibliotekę DLL. Będziesz musiał podać go linkerowi podczas budowania programu używającego biblioteki DLL, dzięki czemu wie, że zewnętrzny identyfikator jest właściwie funkcją wyeksportowaną przez bibliotekę DLL. Łącznik używa biblioteki importu do dodawania wpisów do tabeli importu dla EXE. Który następnie jest używany przez system Windows w czasie wykonywania, aby dowiedzieć się, jakie biblioteki DLL muszą być załadowane, aby uruchomić program.

Powiązane problemy