Freigeben über


Erstellen einer Importbibliothek und einer Exportdatei

Verwenden Sie die folgende Syntax, um eine Importbibliothek zu erstellen und eine Datei zu exportieren:

LIB /DEF[:deffile] [options] [objfiles] [libraries]

Wenn /DEF angegeben ist, erstellt LIB die Ausgabedateien aus Exportspezifikationen, die im LIB-Befehl übergeben werden. Es gibt drei Methoden zum Angeben von Exporten, die in der empfohlenen Reihenfolge der Verwendung aufgeführt sind:

  1. Eine __declspec(dllexport) Definition in einer der Objfiles oder Bibliotheken

  2. Eine Spezifikation von /EXPORT:name in der LIB-Befehlszeile

  3. Eine Definition in einer EXPORTS-Anweisung in einer Deffile

Dies sind die gleichen Methoden, mit denen Sie Exporte beim Verknüpfen eines Exportprogramms angeben. Ein Programm kann mehrere Methoden verwenden. Sie können Teile des LIB-Befehls (z. B. mehrere Objfiles oder /EXPORT-Spezifikationen) in einer Befehlsdatei im LIB-Befehl angeben, genau wie in einem LINK-Befehl.

Die folgenden Optionen gelten für das Erstellen einer Importbibliothek und des Exportdateis:

/OUT: Import

Setzt den Standardausgabedateinamen für die zu erstellende Importbibliothek außer Kraft. Wenn /OUT nicht angegeben ist, ist der Standardname der Basisname der ersten Objektdatei oder -bibliothek im LIB-Befehl und der Erweiterung .lib. Die Exportdatei erhält denselben Basisnamen wie die Importbibliothek und die Erweiterung EXP.

/EXPORT: Eintragsname[ = interner Name][,@Ordinal[, NONAME]][, DATA]

Exportiert eine Funktion aus Ihrem Programm, damit andere Programme die Funktion aufrufen können. Sie können auch Daten exportieren (mithilfe des DATA-Schlüsselworts ). Exporte werden in der Regel in einer DLL definiert.

Der Eintragsname ist der Name der Funktion oder des Datenelements, da er vom aufrufenden Programm verwendet werden soll. Optional können Sie den internen Namen als die funktion angeben, die im definierenden Programm bekannt ist. Standardmäßig entspricht der interne Name dem Eintragsnamen. Die Ordnungszahl gibt einen Index in der Exporttabelle im Bereich 1 bis 65.535 an. Wenn Sie keine Ordnungszahl angeben, weist LIB eine zu. Das NONAME-Schlüsselwort exportiert die Funktion nur als Ordnungszahl ohne Eintragsname. Das DATA-Schlüsselwort wird verwendet, um nur Datenobjekte zu exportieren.

/INCLUDE: Symbol

Fügt der Symboltabelle das angegebene Symbol hinzu. Diese Option ist nützlich, um die Verwendung eines Bibliotheksobjekts zu erzwingen, das andernfalls nicht enthalten wäre.

Beachten Sie, dass Beim Erstellen der Importbibliothek vor dem Erstellen der .dll beim Erstellen der .dll beim Erstellen der .dll dieselben Objektdateien übergeben werden müssen, wie sie beim Erstellen der Importbibliothek übergeben wurden.

Siehe auch

Arbeiten mit Importbibliotheken und Exportdateien