¿Le resultó útil esta página?
Sus comentarios sobre este contenido son muy importantes. Háganos saber su opinión.
¿Tiene comentarios adicionales?
Caracteres restantes: 1500
MSDN Library
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Importar a una aplicación mediante __declspec(dllimport)

Se dice que un programa que utiliza símbolos públicos definidos por un archivo DLL importa dichos símbolos. Cuando cree archivos de encabezado para aplicaciones que utilizan los archivos DLL para generar, utilice __declspec(dllimport) en las declaraciones de los símbolos públicos. La palabra clave __declspec(dllimport) funciona tanto si exporta con archivos .def como con la palabra clave __declspec(dllexport).

Para hacer que el código sea más legible, defina una macro para __declspec(dllimport) y después utilice la macro para declarar cada símbolo importado:

#define DllImport   __declspec( dllimport )

DllImport int  j;
DllImport void func();

El uso de __declspec(dllimport) es opcional en declaraciones de función, pero el compilador produce un código más eficaz si utiliza esta palabra clave. Sin embargo, debe utilizar __declspec(dllimport) para que el ejecutable importador pueda tener acceso a los símbolos y objetos de datos públicos del archivo DLL. Tenga en cuenta que los usuarios del archivo DLL aún deben vincularse a una biblioteca de importación.

Puede utilizar el mismo archivo de encabezado para el archivo DLL y para la aplicación de cliente. Para ello, utilice un símbolo de preprocesador especial que indique si está compilando el archivo DLL o la aplicación de cliente. Por ejemplo:

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

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

Adiciones de comunidad

Mostrar:
© 2015 Microsoft