| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > Как сделать плагин с интерфейсами в Qt |
| Автор: Spike 25.7.2014, 13:11 | ||||||
| Всем привет. Есть приложение с плагинами, сделано на дельфи, нужно для него сделать плагин на Qt. Как это сделано в дельфе: Для коммуникаций между плагинами и ядром используются интерфейсы:
Ядро грузит плагин (dll), получает из него функции Init и Done. Вызов Init инициализирует плагин, при этом как аргумент передается интерфейс ядра, возвращает интерфейс плагина:
Реализация Init в плагине:
Подскажите ребята, куда копать? Как сделать такой плагин на Qt? |
| Автор: Avazart 25.7.2014, 16:01 | ||
| Тут должен быть либо COM интерфейс, или DLL c интерфейсом в стиле "Си", по примеденному коду не понять ничего. Судя по соглашению там COM интерфейс
http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BE_%D0%B2%D1%8B%D0%B7%D0%BE%D0%B2%D0%B5#safecall |
| Автор: sCreator 26.7.2014, 12:08 | ||
| Копай в сторону ActiveX Qt (ActiveQt) Только Com сервер делать не надо а делай библиотеку (dll) c экспортом функций Init и Done, Для реализаций интерфейсов используй QAxObject или QAxBase в объявлении класса используй
Сам такого еще не делал. |
| Автор: antoshib 31.7.2014, 13:01 | ||
Посмотрел доки, там же пишут, что QAxObject или QAxBase используются как обертки для досутпа к существующим COM объектам, т.е. это контейнерные классы. А ведь нужно создать сервер, т.е. использовать классы QAxAggregated, QAxBindable.. Или их можно как-то приспособить тоже? Как конкретно должно выглядеть наследование от интерфеса и реализация его методов? |