Condividi tramite


Compilazione di una libreria di importazione e di un file di esportazione

Per compilare una libreria di importazione ed esportare un file, usare la sintassi seguente:

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

Quando si specifica /DEF, LIB crea i file di output dalle specifiche di esportazione passate nel comando LIB. Esistono tre metodi per specificare le esportazioni, elencate in ordine di utilizzo consigliato:

  1. Definizione __declspec(dllexport) in una delle librerie o objfile

  2. Specifica di /EXPORT:name nella riga di comando LIB

  3. Definizione in un'istruzione EXPORTS in un deffile

Questi sono gli stessi metodi usati per specificare le esportazioni durante il collegamento di un programma di esportazione. Un programma può usare più di un metodo. È possibile specificare parti del comando LIB ,ad esempio più objfiles o /EXPORT specifications, in un file di comando nel comando LIB, proprio come è possibile in un comando LINK.

Le opzioni seguenti si applicano alla creazione di una libreria di importazione e di un file di esportazione:

/OUT: importazione

Esegue l'override del nome file di output predefinito per la libreria di importazione in fase di creazione. Quando /OUT non è specificato, il nome predefinito è il nome di base del primo file oggetto o della libreria nel comando LIB e l'estensione lib. Il file di esportazione ha lo stesso nome di base della libreria di importazione e dell'estensione .exp.

/EXPORT: entryname[= internalname][,@ordinal[, NONAME]][, DATA]

Esporta una funzione dal programma per consentire ad altri programmi di chiamare la funzione. È anche possibile esportare i dati usando la parola chiave DATA . Le esportazioni sono in genere definite in una DLL.

Il nome della voce è il nome della funzione o dell'elemento di dati perché deve essere usato dal programma chiamante. Facoltativamente, è possibile specificare il nome interno come funzione nota nel programma di definizione. Per impostazione predefinita, internalname corrisponde a entryname. L'ordinale specifica un indice nella tabella di esportazione nell'intervallo da 1 a 65.535. Se non si specifica ordinale, LIB ne assegna uno. La parola chiave NONAME esporta la funzione solo come ordinale, senza un nome voce. La parola chiave DATA viene utilizzata per esportare oggetti solo dati.

/INCLUDE: simbolo

Aggiunge il simbolo specificato alla tabella dei simboli. Questa opzione è utile per forzare l'uso di un oggetto libreria che altrimenti non verrebbe incluso.

Si noti che se si crea la libreria di importazione in un passaggio preliminare, prima di creare il .dll, è necessario passare lo stesso set di file oggetto durante la compilazione della .dll, come è stato passato durante la compilazione della libreria di importazione.

Vedi anche

Uso di librerie di importazione e file di esportazione