Compartilhar via


Importar para um aplicativo usando o __declspec(dllimport)

É considerado um programa que usa símbolos públicos definidos por uma DLL de importá-los. Quando você cria arquivos de cabeçalho para aplicativos que usam suas DLLs para construir, use __declspec(dllimport) em declarações de símbolos públicos. A palavra-chave __declspec(dllimport) funciona se você exporta com os arquivos. def ou o __declspec(dllexport) palavra-chave.

Para tornar seu código mais legível, definir uma macro para __declspec(dllimport) e, em seguida, usar a macro para declarar cada símbolo importado:

#define DllImport   __declspec( dllimport )

DllImport int  j;
DllImport void func();

Usando __declspec(dllimport) é opcional em declarações de função, mas o compilador produz código mais eficiente se você usar esta palavra-chave. No entanto, você deve usar __declspec(dllimport) para o executável de importação acessar os símbolos de dados públicos e objetos a DLL. Observe que os usuários de sua DLL ainda precisam vincular com uma biblioteca de importação.

Você pode usar o mesmo arquivo de cabeçalho para a DLL e o aplicativo cliente. Para fazer isso, use um símbolo do pré-processador especial que indica se você estiver construindo a DLL ou criando o aplicativo cliente. For example:

#ifdef _EXPORTING
   #define CLASS_DECLSPEC    __declspec(dllexport)
#else
   #define CLASS_DECLSPEC    __declspec(dllimport)
#endif

class CLASS_DECLSPEC CExampleA : public CObject
{ ... class definition ... };

O que você deseja fazer?

O que você deseja saber mais a respeito?

Consulte também

Conceitos

Importar para um aplicativo