Schaffe es nicht eine Kalsse aus einer DLL zu exportieren
-
also, mein programm ist so aufgebaut:
DLL (testdll.dll)
testdll.h
class CTEST { int zahl1; int zahl2; int zahl3; void fill(); CTEST(); ~CTEST(); }; void andereFunktion1(); void andereFunktion2();
testdll.cpp
#include "testdll.h" CTEST::fill() { zahl1=1; zahl2=2; zahl3=3; }; CTEST::CTEST() { // der constructor }; CTEST::~CTEST() { // der destructor }; void andereFunktion1() { // mache irgendwas }; void andereFunktion2() { // mache was anderers };
testdll.def
LIBRARY "testdll.dll" EXPORTS andereFunktion1 andereFunktion2
testdll_exports.h
void andereFunktion1(); void andereFunktion2();
Programm (testprog.dll)
testprog.cpp
#include "testdll_exports.h" void main() { andereFunktion1(); // das funktioniert // jetzt will ich das machen: CTEST *test; }
wie kann ich die klasse CTEST jetzt auch noch exportieren?
ich möchte die klasse aber nicht in "testdll_exports.h" definieren ...
-
dann garnicht!
-
Was genau verstehst du unter "definieren"?
Du hast sie in der .h datei doch gar nicht definiert.btw:
Da fehlen ein paar __declspec(dllimport) bzw. __declspec(dllexport), je nachdem was du willst.
Lies dir am besten ein paar Tutorials über DLL-Programmierung durch.