Importar para um aplicativo usando o __declspec(dllimport)
Um programa que usa símbolos públicos definidos por uma DLL é chamado de importá-los.Ao criar arquivos de cabeçalho para aplicativos que usam suas DLLs desenvolver com, use __declspec(DllImport) em declarações de símbolos públicos.A palavra-chave __declspec(DllImport) funciona se você exporta com .def arquivos ou o __declspec(dllexport) palavra-chave.
Para tornar seu código mais legível, definir uma macro para __declspec(DllImport) e use a macro para declarar cada importados símbolo:
#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 essa palavra-chave.No entanto, você deve usar __declspec(DllImport) para o executável de importação acessar dados públicos de símbolos da DLL e objetos.Observe que os usuários da 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, utilize um símbolo de pré-processador especial que indica se você está criando a DLL ou criar o aplicativo cliente.Por exemplo:
#ifdef _EXPORTING
#define CLASS_DECLSPEC __declspec(dllexport)
#else
#define CLASS_DECLSPEC __declspec(dllimport)
#endif
class CLASS_DECLSPEC CExampleA : public CObject
{ ... class definition ... };