warning C4518: '__declspec(dllexport )
-
Hallo,
ich bekomme beim Kompilieren folgende Warnung:
warning C4518: '__declspec(dllexport )
Wenn ich versuche die Funktion aus der DLL Datei dynamisch zu laden, dann bleibt das Programm stehen!!
Code Fragment:
class DeviceControl
{
public:
const char* getSerialNumber(void);
};extern "C" const char* __declspec(dllexport) serialNumber(void)
{
DeviceControl cotrol;
return cotrol.getSerialNumber();
}
-
Hi,
wenn du eine Funktion aus einer Dll Exportierst, dann ist __declspec(dllexport) richtig. Wenn du dieses Header File in dem Code verwendest in dem du importierst, dann muss es __declspec(dllimport) sein. Wenn du das gleiche Header File verwenden willst dann empfiehlt sich ein Makro so in der Art:
#ifdef __DLLDEVICE //! exportiere die Klassen und Methoden #define DLL_IMP_EXP __declspec( dllexport ) #else //! importiere die Klassen und Pakete aus dem Paket TableOutput #define DLL_IMP_EXP __declspec( dllimport ) #endifund in den CPP Files der Dll noch ein #define __DLLDEVICE einfügen und fertig.
MFG
KaiEDIT:
Bei den Funktionsnamen wo du __declspec( dllexport ) geschrieben hast gehört dann das "DLL_IMP_EXP" hin.[ Dieser Beitrag wurde am 12.06.2003 um 13:33 Uhr von KaiE editiert. ]
-
Ich Danke Dir
