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

Ваш аккаунт

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

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

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

Не получается вытащить сложную функцию из dll

2.6K
14 ноября 2002 года
esp
1 / / 14.11.2002
Есть функция, которой передается в качетсве параметрова WideString:

void __stdcall Event(WideString Message);

Есть Функция Test, которой передается WideString, int и указатель на функцию Event (см. выше), я этот тип описываю так:
typedef void (__stdcall *MyEvent)(WideString Message);

Когда я пытаюсь вытащить эту функцию Test из dll'ки, но при выполнении программы вылезает ошибка...

Как нормально вытаскивать эту функцию? Может я не правильно описал typedef void (__stdcall *MyEvent)...

PS: Ф-ия Test написана на Delphi и сохранена в dll'ке...

Вот код программы, где вытаскиваю ф-ию:

void __stdcall Event(WideString Message)
{
Form1->Memo1->Lines->Add(Message);
// return 0;
}

typedef void (__stdcall *FEvent)(WideString Message, int i, MyEvent E);

HINSTANCE LibHandle;
WideString S;

S = "lalala";

LibHandle = LoadLibrary("project2.dll");

if (LibHandle)
{
FEvent Ev = (FEvent) GetProcAddress(LibHandle, "Test");

if (Ev == NULL)
Application->MessageBox("GetProcAddress Error","error",MB_OK);
else
Ev(S,2, Event);
// Ev(S,2, NULL);

FreeLibrary(LibHandle);
}
else
Application->MessageBox("Can't find project2.dll","error",MB_OK);
476
15 ноября 2002 года
man2002ua
218 / / 16.10.2002
покажи dll (man@kiev.vectis.ru) - дам формат ф-и
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог