Kompilowanie biblioteki importowanej oraz pliku eksportowanego
Aby utworzyć bibliotekę importu i plik eksportu, użyj następującej składni:
LIB /DEF[:deffile] [opcje] [objfiles] [biblioteki]
Po określeniu /DEF biblioteka LIB tworzy pliki wyjściowe ze specyfikacji eksportu, które są przekazywane w poleceniu LIB. Istnieją trzy metody określania eksportów wymienione w zalecanej kolejności użycia:
__declspec(dllexport)
Definicja w jednym z objfiles lub bibliotekSpecyfikacja /EXPORT:name w wierszu polecenia LIB
Definicja w instrukcji EXPORT w pliku deffile
Są to te same metody, których używasz do określania eksportów podczas łączenia programu eksportu. Program może używać więcej niż jednej metody. Możesz określić części polecenia LIB (takie jak wiele objfiles lub /EXPORT specifications) w pliku poleceń w poleceniu LIB, tak jak w poleceniu LINK.
Następujące opcje dotyczą kompilowania biblioteki importu i pliku eksportu:
/OUT: import
Zastępuje domyślną nazwę pliku wyjściowego dla tworzonej biblioteki importu . Jeśli /OUT nie jest określony, domyślną nazwą jest nazwa podstawowa pierwszego pliku obiektu lub biblioteki w poleceniu LIB i rozszerzenie .lib. Plik eksportu ma taką samą nazwę podstawową jak biblioteka importu i rozszerzenie .exp.
/EXPORT: entryname[= internalname][,@ordinal[, NONAME]][, DATA]
Eksportuje funkcję z programu, aby umożliwić innym programom wywoływanie funkcji. Możesz również wyeksportować dane (przy użyciu słowa kluczowego DATA ). Eksporty są zwykle definiowane w dll.
Entryname to nazwa funkcji lub elementu danych, który ma być używany przez program wywołujący. Opcjonalnie można określić nazwę wewnętrzną jako funkcję znaną w programie definiującym; domyślnie nazwa wewnętrzna jest taka sama jak nazwa_wpisu. Porządkowy określa indeks do tabeli eksportu w zakresie od 1 do 65 535; jeśli nie określisz porządkowych, biblioteka LIB przypisuje jeden. Słowo kluczowe NONAME eksportuje funkcję tylko jako porządkową bez nazwy wpisu. Słowo kluczowe DATA służy do eksportowania obiektów tylko do danych.
/INCLUDE: symbol
Dodaje określony symbol do tabeli symboli. Ta opcja jest przydatna do wymuszania użycia obiektu biblioteki, który w przeciwnym razie nie zostanie uwzględniony.
Należy pamiętać, że jeśli tworzysz bibliotekę importu w wstępnym kroku, przed utworzeniem .dll należy przekazać ten sam zestaw plików obiektów podczas kompilowania .dll, jak przekazano podczas kompilowania biblioteki importu.
Zobacz też
Praca z bibliotekami importowanymi oraz plikami eksportowanymi