![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| admsasha |
|
||||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 28.1.2005 Репутация: нет Всего: 6 |
Есть интерфейс i_plugin.h
Есть dll mydll.cpp
С основной программы гружу эту dll, вызываю create и успешно пользуюсь. Потребовалось из dll вызывать методы основной программы. Под linux делаю вот так Создаю еще один класс, типа
mydll.cpp переписываю так
Всё успешно собирается и работает. НО под mingw не собирается.
Как правильно осуществить задуманное под windows ? |
||||||||||
|
|||||||||||
| math64 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 8 Всего: 72 |
Я бы в плугин добавил ещё дестуктор.
Для вызова методов основной программы создал бы ещё один интерфейс, указатель на который передается конструктору плугина.
Это сообщение отредактировал(а) math64 - 11.12.2015, 09:53 |
|||
|
||||
| admsasha |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 28.1.2005 Репутация: нет Всего: 6 |
math64, Да, так работает, но это менее удобно.
|
|||
|
||||
| math64 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 8 Всего: 72 |
Вариант 2.
Выделить класс Share во вторую dll. И загружать её обычным образом, через библиотеку импорта, как в exe, так и в первой dll. Добавлено через 8 минут и 13 секунд Ну а чтобы не ограничиваить себя и чтобы пругин мог пользоваться чем хочешь - можно в exe оставить только main(). |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |