Placering af variable der skal exporteres i dll
HejsaJeg har et dll projekt i msvc 2005, der indeholder en del erklæringer som programmer, der skal bruge dll'en skal have adgang til.
For tiden exporteres funktioner i filen dll.h, der importeres af programmet, der skal bruge dll'en, men hvor vil det være hensigmæssige at placererer strukturerer m.fl., således at de også kan tilgåes udefra samt at det skal være tilgængelige i resten af dll projektet??? Er det bedst at lave en ny udgave af alle structurer og så gemme dem hvor funktionerne eksporteres??
Jeg vil helst undgå at skulle lave for mange dubletter...
For tiden har jeg min dll.h file med:
#ifdef WPGRAPDLL_EXPORTS
#define WPGRAPDLL_API __declspec(dllexport)
#else
#define WPGRAPDLL_API __declspec(dllimport)
#include "commonStructures.h"
#endif
WPGRAPDLL_API int initWPGrabDll();
WPGRAPDLL_API int cleanupWPGrabDll();
WPGRAPDLL_API int submitGrabJob(char* url, GrabOptionsStruct* options = NULL);
Hvor delte strukturer så skal gemmes i commonStructures...
og "commonStructures.h" ser således ud:
struct GrabOptionsStruct
{
};
Gode ideer er velkommen...