powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / написание plug-in'ов
4 сообщений из 4, страница 1 из 1
написание plug-in'ов
    #33122423
Denissio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть основное приложение, написанное, например, на С++ Билдере. К нему
должно прикручиваться неограниченное кол-во модулей сторонних
производителей. Пример: outpost + плагины *.dll.

Как это делается? Имеется в виду какие существуют для этого
методы/классы/библиотеки и т.д.

Ведь проблема в том, что при использовании определенной dll сначала делается
implib и ссылки вставляются в основную программу. А как быть, когда заранее
не известно ни количества dll, не их названия. Допустим, что известно только
название некой функции, стандартизированной для всех плагинов.

Короче вопрос - как динамически, во время исполнения, подлинковывать модули?


Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
написание plug-in'ов
    #33122532
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hLib = LoadLibrary("module1.dll");
if (! hLib) {
failed("Can not load library");
return;
}

typedef VOID (*MYPROC)(int, char*);
MYPROC fImportedFunction;

fImportedFunction = GetProcAddress(hLib, "InitModule");
if (! fImportedFunction) {
failed("No init function, wrong module?");
return;
}

fImportedFunction(1, "aaa");
...
Рейтинг: 0 / 0
написание plug-in'ов
    #33122534
catch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
написание plug-in'ов
    #33122638
Denissio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за инфу!


Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / написание plug-in'ов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]