[DLL] Importowanie klasy...
Ostatnio zmodyfikowano 2012-01-29 13:21
Mrovqa Temat założony przez niniejszego użytkownika |
[DLL] Importowanie klasy... » 2012-01-28 15:52:23 Witam! Mam mały problem... otóż mam zamiar z własnej DLLki zaimportować klasę (DLL linkowana dynamicznie). Wzorowałem się na (DarkCult) WinAPI\DLL. I tu jest problem. Jak zadeklarować klasę? Na darkculcie autor zapomniał to zamieścić... próbowałem sam się pobawić, ale nic z tego (albo nazwa nieznana, albo nie ma takiej metody...). Szukałem na MSDN-ie, ale szczerze mówiąc niezbyt to zrozumiałem xD Jak zadeklarować tę klasę? Dodam, że korzystam z VC++ 2010 Exp i używam extern "C++" (wcześniej importowałem funkcję - z tym problemu nie było :)). Pozdrawiam, Mrowqa |
|
pekfos |
» 2012-01-28 15:59:21 No klasa w pliku .h. Typu nie da się importować w czasie wykonania programu ;) Btw: extern "C++" ? |
|
Mrovqa Temat założony przez niniejszego użytkownika |
» 2012-01-28 16:13:25 Plik *.h? W externie dawałem całą definicję klasy (bez metod)... extern "C++" { class DLLIMPORT DllClass { public: DllClass(); ~DllClass( void ); bool Test( int what ); int set( int what ); int cos; private: void init(); }; DllClass * DLLIMPORT CreateObject(); void DLLIMPORT DestroyObject( DllClass * ptr ); }
Wtedy wywala mi to: 1>d:\c++\my projects\testy itp\dll class test\dll app\main.cpp(25): error C2059: syntax error : '__declspec(dllimport)' Z kolei gdy dam samą deklarację klasy to wywala inny błąd (nie widzi metod). O co chodzi? -_-' |
|
pekfos |
» 2012-01-28 16:20:13 Szukałeś w Google? Chyba w pierwszym wyniku jest artykuł o klasach w DLL z przykładem :P |
|
Mrovqa Temat założony przez niniejszego użytkownika |
» 2012-01-28 16:28:32 Wiesz, trzeba wiedzieć co wpisać (w google) ;P Znalazłem coś na CodeProject, tyle że jest dłuuuuugie... tłumaczenie i zrozumienie tego trochę by mi zajęło ..:/ |
|
pekfos |
» 2012-01-28 16:30:59 Ja tam od razu pomyślałem by wpisać "DLL class" :P |
|
Mrovqa Temat założony przez niniejszego użytkownika |
» 2012-01-28 17:26:23 Ja ogólnie mówiłem o szukaniu ;P Wpisałem coś skomplikowanego ;P Po za tym "DLL class" to mi bardziej kojarzy się ze statycznym linkowaniem ;P Wracając do tematu... kupa błędów, a po ich poprawieniu to samo co miałem wcześniej: 1>d:\c++\my projects\testy itp\dll example\dll example\dllexports.h(15): error C2059: syntax error : '__declspec(dllexport)' :/ (przykład z pierwszego linka w google dla frazy "dll class") |
|
pekfos |
» 2012-01-28 17:28:26 extern "C++" wygląda jakoś podejrzanie :P Skąd pomysł na coś takiego? |
|
« 1 » 2 |