Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема с Dll

7.5K
29 августа 2005 года
Ivan_Cheremisov
23 / / 11.05.2005
Подскажите пожалуйста, что тут не так..

exe-шник:

typedef int (CALLBACK *PFN_MyFunction)(char *);

void main()
{
HINSTANCE hMyDll;
hMyDll=LoadLibrary("MyDll");
if(hMyDll==NULL)
{
MessageBox(NULL, "Not load dll", "Loading", MB_OK);
}
else
{

PFN_MyFunction pfnMyFunction;
pfnMyFunction=(PFN_MyFunction)GetProcAddress(hMyDll,"MyFunc");

if(pfnMyFunction==NULL)
{
MessageBox(NULL, "Not Found MyFunc", "Loading", MB_OK);
}
else
{
int iCode;
iCode=(*pfnMyFunction)("Hello"); // вызов функции библиотеки по адресу
}
FreeLibrary(hMyDll);

}
}

Текст DLL-ки:

extern "C" int CALLBACK MyFunc(char *str);

int WINAPI DllMain(HINSTANCE hInstance, DWORD fdReason, PVOID pvReserved)
{
return TRUE;
}

extern "C" int CALLBACK MyFunc(char *str)
{
MessageBox(NULL,str,"Function from DLL",MB_OK);

return 1;
}

Может что-то в настройках компилятора не-то, Dll загружается, но функцию MyFunc не находит.
499
02 сентября 2005 года
madjahed
149 / / 14.01.2004
Цитата:
Originally posted by Ivan_Cheremisov
Подскажите пожалуйста, что тут не так..

extern "C" int CALLBACK MyFunc(char *str)
{
MessageBox(NULL,str,"Function from DLL",MB_OK);

return 1;
}

Может что-то в настройках компилятора не-то, Dll загружается, но функцию MyFunc не находит.



В DLL писать нужно так :

extern "C" __declspec(dllexport) int MyFunc(char *str)
{
MessageBox(NULL,str,"Function from DLL",MB_OK);

return 1;
}

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог