Witam,
Problem mam taki:
Stworzyłem sobie bibliotekę, która na pewno jest OK.
W tej bibliotece mam funkcję, która zwraca nowy obiekt. Wygląda ona tak:
extern "C"
{
DLLIMPORT eSockKl* StworzESock(); //definicja
}
eSockKl* StworzESock()
{
eSockKl* s;
return s;
}
Ale kiedy próbuję pobrać adres tej funkcji, a robię to tak:
typedef int (__cdecl *FUN)();
FUN stw;
if(hDll != NULL)
{
cout << "dll zaladowany\n";
stw = (FUN)GetProcAddress(hDll, "StworzESock");
}
if(stw != NULL)
{
cout << "funkcja jest\n";
(stw)();
}
else cout << "nie ma funkcji\n";
wyświetla "nie ma funkcji".
Starałem się wszystko robić jak w kursie na darkcult.gamedev.pl, ale u mnie wywala błąd jeśli zrobię tak:
eSockKl* CreateObject()
{
return new eSockKl;
}