Помогите кто сможет ...
Написал DLL вызываю с параметрами, как функция отработает, вылетает ошибка, если процедуру напишу(в DLLке) без параметров, то всё чинно идёт ...
Код:
//DLLка
extern "C" __declspec(dllexport) void libraryloader(char adr[15],int port)
{
int s1;
FILE *stream1;
stream1 = fopen("!333.txt", "w");
................
fclose(stream1);
return ;
}
//Сам вызов
typedef void (WINAPI*cfunc)(char as[15],int sa);
cfunc libraryloader;
int main(int argc, char* argv[])
{
HMODULE hLib;
hLib = LoadLibrary("tlibrary.dll");
if(hLib != NULL)
{
printf("Ok !");
}
else
{
printf("Fucka !");
}
libraryloader=(cfunc)GetProcAddress((HMODULE)hLib, "libraryloader");
if(libraryloader==NULL)
{
printf("Unable to load function(s)\n");
FreeLibrary((HMODULE)hLib);
}
libraryloader(as,sa);
getch();
FreeLibrary((HMODULE)hLib);
return 0;
}
Заранее спасибо ...
Исправлена подсветка синтаксиса. -- ПК.
Спасибо за помощь ... быстро и оперативно, даже не ожидал
Здравствуйте, ilnar, Вы писали:
I>убери WINAPI
Не надо полагаться на умолчания компилятора. Они могут быть изменены. Лучше в коде в обоих местах (и в клиенте, и в сервере) указывать соглашение о вызовах.
... << Robert Plant — Ship of fools >>